【地址的概念】
这里,我们为了更好的理解什么是指针,我们必须先了解地址的概念。
地址:在计算机存储器中每个存储单元都有一串连续的编号,这些编号,我们称为地址。
那么,当我们在定义一个变量的时候,如:
int a;
这句话其实是在向我们的内存单元中申请sizeof(int)=4个字节的内存空间。(32位操作系统中)
它可能是这样的:
那么当我们执行如下代码:
std::cout<<&a;
对于上面的存储地址输出的结果自然就是
0x11223354
对于数组而言,当我们声明的时候,其内存地址是连续的:
我们把上面的代码变为:
int a[2];
其内存分配大概如下:
我们再次执行如下代码:
std::cout << &a[0]; //输出a[0]元素对应地址
std::cout << '\n';
std::cout << &a[1];