int a[10];
那么 a 的值是 数组首元素的首地址
&a 的值也是上面的
但是区别
&a数组a的首地址
对指针加1 得到是下一个元素的地址,一个类型为T,+1 是以sizeof(T)为移动单位的
#include
int main(int argc,char *argv[])
{
int a[5] = {1,2,3,4,5};
int *ptr = (int *)(&a + 1);//指针移动了相当一个数组,又将地址进行强转
printf("%x/n",&a[5]);
printf("%x/n",ptr);
printf("%d/n %d/n",*(a +1),*(ptr-1)); //指针移动一个int型大小,即就是一个元素
return 0;
}
#include