数组基础知识:
一维数组:int a[2]
二维数组: int a[2][3]
特性:内存是连续的
支持随机访问
数组名指向数组的首地址,是常量
每个数组元素的类型是一样的
指针和数组:
short a[4];
short *p = a;
printf("%p\n",p+0);
printf("%p\n",p+1);
printf("%p\n",p+2);
printf("%p\n",p+3);
每个地址间隔2个字节,也就是sizeof(short)的大小
指针+1,移动2个字节的大小,也就是指针所指向的类型的字节大小
1:
2:
3:
4:
test2分析:&a是数组指针,&a+1移动的是一整个数组,偏移20个字节