数组地址问题
程序代码:
# include <stdio.h> int main(void) { int a[5] = {2222,2666,35888,4,5}; int *p=a; //指针被赋值a的首地址即a【0】为什么输出却提前4个字节 printf("%d\n", &a[0]); printf("%d\n", &a[1]); printf("%d\n", &a[2]); printf("%d\n", a); printf("%d\n", &p+1); printf("%d\n", &p); //指针被赋值a的首地址即a【0】为什么输出却提前4个字节 printf("%d\n", *p); //值却是正确的。 return 0; }