Arrays and Pointers Connection
Arrays and pointers are closely connected. The name of an array can be treated as a pointer to its first element.
main
12345678#include <iostream> int main() { int arr[5] { 12, 21, 27, 10, 11 }; // Using dereference operator (`*`) to access the value std::cout << *(arr); }
Arrays are typically formed by arranging elements in contiguous memory blocks, where each element is stored in consecutive memory locations. This enables the application of pointer arithmetic to access any element within the array.
main
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; }
In fact, the compiler automatically performs this operation. It translates array brackets into the dereference operator with pointer arithmetic with an array name. This implies that the order can be changed, allowing the index to be placed outside the brackets while the array name remains inside the brackets (index[array_name]
).
main
1234567#include <iostream> int main() { float arr[5] { 2.7, 9.9, 1.0, 0.3, 2.2 }; std::cout << 3[arr] << std::endl; }
Note
Stick to conventional syntax for clarity, this form may confuse unfamiliar readers
Tak for dine kommentarer!
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