数组问题:a与&a有的区别
int a[5] = {0,1,2,3,4};这种用法还是比较常见的。
#include <stdio.h>
int main(void)
{
int a[5] = {0,1,2,3,4};
int *ptr = (int*)(&a+1);
printf("*(a+1) = %d, *(ptr-1) = %d\n",*(a+1), *(ptr-1));
return 0;
}
int *ptr = (int*)(&a+1);,这种代码,目前来讲我是用的比较少,其实就是将a数组后面的一个地址赋值给了指针ptr,指针ptr还是指向int类型的。即a[4]后面的这一个内存。