数组在两种情况下代表数组本身------即该段连续空间
1.对数组名进行取地址
2.数组名出现在sizeof之后
其余数组名表示首元素地址
比如:函数传参----int*
int *p1=array;
int *p2=array+0;
int *p3=&array[0]; 等价
char p3=NULL; // 0 (void)0 数值上相等 含义不同
整形数字0 0号地址元素
int main()
{
int array[]={1,2,3,4,5};
int *p1=(int *)(&array+1);
int *p2=(int *)(array+1);
char *p3=NULL;
int a=p1[-2]+*p2+sizeof(&array)+aizeof(*p3);
printf("%d\n",a);
return 0;
}
p1[-2] 相当于 *(p1-2);