Forbindelsen Mellem Arrays og Pointere
Stryg for at vise menuen
Arrays og pointere er tæt forbundne. Navnet på et array kan behandles som en pointer til dets første element.
main.cpp
12345678#include <iostream> int main() { int arr[5] { 12, 21, 27, 10, 11 }; // Using dereference operator (`*`) to access the value std::cout << *(arr); }
Arrays dannes typisk ved at arrangere elementer i sammenhængende hukommelsesblokke, hvor hvert element er lagret i fortløbende hukommelsesplaceringer. Dette muliggør brugen af pointeraritmetik til at få adgang til ethvert element i arrayet.
main.cpp
12345678#include <iostream> int main() { float arr[5] { 2.7, 9.9, 1.0, 0.3, 2.2 }; std::cout << arr[3] << std::endl; std::cout << *(arr + 3) << std::endl; }
Faktisk udfører compileren automatisk denne operation. Den oversætter array-klammer til dereference-operatoren med pointer-aritmetik sammen med array-navnet. Dette betyder, at rækkefølgen kan ændres, så indekset kan placeres uden for klammerne, mens array-navnet forbliver inden i klammerne (index[array_name]).
main.cpp
1234567#include <iostream> int main() { float arr[5] { 2.7, 9.9, 1.0, 0.3, 2.2 }; std::cout << 3[arr] << std::endl; }
Brug konventionel syntaks for klarhed; denne form kan forvirre læsere, der ikke er bekendt med den.
Tak for dine kommentarer!
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat