指针数组和数组指针
指针数组
它是一个数组
。数组元素都是指针。
数组指针
它是一个指针
。指向一个数组。
一维数组和指针
int A[5];
int *p = A;
数组名等于数组首元素的地址!!!
A = &A[0] = 200;
p = 200;
*p = A[0] = 2;
*(p+2) = 6;
二维数组和指针
int B[2][3];
int (*p)[3] = B;
数组名等于数组首元素的地址!!!
在上面,B等于首元素的地址,首元素这里应该是B[0],B[0]含有3个int的数据。而B[0]又作为这三个元素的数组名。
B = &B[0] = 200;
*B = B[0] = &B[0][0] = 200;
B+1 = &B[1] = 212;
*(B+1) = B[1] = &B[1][0] = 212;
*(B+1)+2 = B[1] + 2 = &[1][2] = 220;