下面程序的输出结果是
int main()
{
int a[5] = {1, 2, 3, 4, 5};
int *ptr = (int *)(&a + 1);
printf("%d, %d", *(a + 1), *(ptr - 1));
return 0;
}
int a[5] = {1, 2, 3, 4, 5};
int a_size = sizeof(a); //a_size = 5 * sizeof(int) 2. 在取址符后时 int *p = &a + 1; //这个加一就只是单纯的加一个int型地址长度了,而是一个数组a的长度除此之外,都是指数组首元素地址
printf("a[0] = %d\n", *a); //既然是地址,打印值的时候要解引用 如有不当,还望不吝赐教