#include <stdio.h>






int main()



{


int arr[4]={1,2,3,4};


int *p;//声明指向数组首元素的指针





int (*ptr)[4];//声明指向数组的指针




p=arr;//经过转换,实际上p是指向一个int型的元素指针


printf("%d\n",sizeof(p));





printf("%d\n",sizeof(arr));//这里的arr是数组类型,因此sizeof是数组的大小





printf("%p\n",arr);//arr的类容为指向第一个元素的地址


printf("%p\n",&arr[0]);





printf("%p\n",&arr+1);
//这里的&arr表示取arr数组类型的地址,即这里的指针是指向arr


//数组,因此+1,跳跃度是数组的大小





ptr=&arr;//将数组地址赋给ptr,ptr指向数组

















return 0;



}