第1个回答 推荐于2016-01-25
你说的行指针应该是指向数组的指针吧?
数组指针本质上是一个指针,而指针数组是一个数组,关于指针和数组的区别两者都有。
声明的不同:
数组指针:int (*a)[N];
指针数组:int *a[N];
指针的运算结果不同:假设N=64,sizeof(int)=4,&a=0x10000
数组指针:a+1 = 0x10100 = (int)&a + N*sizeof(int)
指针数组:a+1 = 0x10004 = (int)&a + sizeof(int*)
使用上的不同:
数组指针:一般用在传递二维数组时的参数上
int find_max(int a[][100]) // 只有在形参里这样写才是数组的指针,这里是宽度为100的数组的指针
指针数组,一般用于保存很多指针,比如字符串数组
char *strings[100] = {"abc", "bcd", "efg"};本回答被提问者和网友采纳