How Arrays and Pointers Work Together in C++
In C++, an array name is actually a pointer to its first element. That’s why arrays and pointers go hand-in-hand like peanut butter and jelly! 🥪
This connection lets you use pointers to walk through arrays in memory.
🎯 Pointer to First Element
When you write:
int nums[3] = {10, 20, 30};
The name nums holds the address of nums[0]. It’s like saying:
int* ptr = nums; // Same as &nums[0]
🔧 Example: Access Array with Pointer
#include <iostream>
using namespace std;
int main() {
int nums[3] = {10, 20, 30};
int* ptr = nums;
for (int i = 0; i < 3; i++) {
cout << "Value: " << *(ptr + i) << endl;
}
return 0;
}
🧠 Pointer Arithmetic
ptr + 1points to the next element*(ptr + i)gives the value at indexi- This works because memory addresses are handled smartly by the compiler
📌 Same Output, Different Styles
These both give the same value:
nums[2] // value at index 2 *(nums + 2) // same thing using pointer arithmetic
💡 Summary
- Array name is a pointer to the first element
- You can use pointers to loop through arrays
- Pointer math makes it powerful (but be careful!)
Arrays and pointers are memory-level buddies. Learn one, understand both! 💡