【易错点】数组名和数组取地址的区别

发布时间 2023-06-12 22:48:14作者: wkxnk

 

int a[3] = {1, 2, 3};

 

a:  数组名,数组中第一个元素的地址,相当于 &a[0]

 

&a:整个数组的地址,在数值上等于 a

 

a+1:数组中第二个元素的地址,相当于 &a[1]

 

&a+1:整个数组结束以后后面一个位置的地址

 

即:a = &a,  但  a+1 ≠ &a+1

 

a[0] a[1] a[2]  

 

     ↑            ↑                      ↑

 a = &a      a+1                &a+1