int *p;
int a[2]={0};
p=a;
sizeof(p)与sizeof(*p)是不一样的大小,前者指的不是p的值(地址)的类型大小,而是其指针变量本身的大小。尽管p=a;但sizeof(p)与sizeof(a)是不一样的,a是整个数组的大小,此时的a不是a[0]的地址的意思了。
p+1是其指向的地址移动四个字节,不是自己的地址移动4个字节
int *p;
int a[2]={0};
p=a;
sizeof(p)与sizeof(*p)是不一样的大小,前者指的不是p的值(地址)的类型大小,而是其指针变量本身的大小。尽管p=a;但sizeof(p)与sizeof(a)是不一样的,a是整个数组的大小,此时的a不是a[0]的地址的意思了。
p+1是其指向的地址移动四个字节,不是自己的地址移动4个字节