1.知识点
数组名代表数组的首地址
int占4位
char占1位
long在32位系统里占4位,在64位里占8位
字符串在rodata段不能修改(int *p = “Hello world”;)
字符数组可以修改(char[] =”Hello world”;)
一个指针占8位
2.一维数组
指针表示变量的方法
1.定义个数组
int a[5] = {1,2,3,4,5};
2.定义指针变量指向数组
int *p = a;//数组名代表数组首地址
3.用指针表示数组成员的值
*(p+i) == p[i] == a[i];
3.二维数组
1.定义一个二维数组
int a[4][5];
2.定义指针变量指向数组
//表示此指针变量只能存放列数为5的二维数组首地址
int (*p)[5] = a;
3用指针表示数组成员的值
*p[0] == a[0][0];
*p[0]+1 == a[0][1];
*p[1] == a[1][0];
*p[1]+1 == a[1][1];
4.指针数组
1.知识点
指针数组是存放指针的数组
2.定义方法
int *p[4];//存放四个指针变量的数组