1 声明的理解
float rain [5] [12]; // rain 是一个包含5个元素的数组,至于每个元素的情况,需要查看声明(除红色)的其他部分。
说明每个元素的类型是 float[12],也就是说,rain具有5个元素,并且每个元素是包含12个float值的数组。
rain[0]是数组,则其首元素为rain[0][0],第二个元素为rain[0][1]...;
2 数组名为首元素的地址 理解
如 float rain [5] [12]; 则
rain = &rain[0];
rain[0]是数组, 则 rain[0] = &rain[0][0];
rain = &&rain[0][0];
3 指针的++操作 理解
指针的++单位大小是对指针类型的
如 char* pc;
int* pi;
double* pd;
此时 pc++ 是在pc值基础上增加1个字节大小(因为char类型大小为1)
pi++是在pi值基础上增加4个字节大小(因为int类型大小为4)
pd++是在pd值基础上增加8个字节大小(因为double类型大小为8)
4 指向多维数组的指针
int (*pz)[2];int zippo[4][2]={{1,3},{2,4},{6,8},{7,8}};
pz = zippo;
5 指针和多维数组