以下是引用ミつン戀ン在2006-8-21 23:29:37的发言:
for(i=0;i<3;i++) p[i]=ch[i];
这个就是把每个字符串首地址即每个一维数组的首地址给到指针数组里
for(i=0;i<3;i++) p[i]=ch[i];
这个就是把每个字符串首地址即每个一维数组的首地址给到指针数组里
按照前辈的说法,ch数组每一行第一列分别是"1,4,7",答案应该是"1,4,7"?
按照前辈的说法,ch数组每一行第一列分别是"1,4,7",答案应该是"1,4,7"?
既然p[i]是首地址,那么printf("%s",p[i]);打印出来的结果应该是每行第一个元素也就是"1,4,7"对吗?不知道我理解错了吗?
那么改为%d输出一样吗?
-------- 2000<------p[0]
123 |2001
--------2002<-------p[1]
456 |2003
--------2004<-------p[2]
78 |2005
--------
数字放在数组中(如图),然后指针数组指向各个数组的首地址。
二维数组在内存上是按直线存储的,*p[i]是二级指针,指元素。
我觉得%d*p[i]是1,4,7
%d p[i]是输出地址的整形值