黑马程序员技术交流社区

标题: 函数指针 int (*p) 如何自增!遍历二维数组!试了好多次都没成功! [打印本页]

作者: blazehot18    时间: 2015-11-22 13:59
标题: 函数指针 int (*p) 如何自增!遍历二维数组!试了好多次都没成功!
例如:
int a[2][3]={1,2,3,4,5,6};
int (*p)[3]=a;
如何通过p++来遍历这个数组,输出值,不是地址!求大神指导
作者: hurry002    时间: 2015-11-22 14:04
*(*(p+i)+j) i两次 j三次
作者: blazehot18    时间: 2015-11-22 14:09
谢谢!不是要这种效果!要自增的!你这个的我明白!用p[i][j]也可以实现你说的这种诶!但不是p自增的形式  就是用++来控制列数增加
作者: blazehot18    时间: 2015-11-22 14:11
p是指针变量!但是不知道怎么用它自增!实现遍历!求指导,谢谢支持的大神们
作者: susie_cc    时间: 2015-11-22 18:08
楼主的指针变量p定义的是二维数组的行指针,应该不能通过p的自增来遍历二维数组吧。p指向的是第一行元素的首地址,p自增之后,依次指向下一行的首地址,获取数组元素也只能获取相应行的第一个元素
作者: chenxinju    时间: 2015-11-22 21:11
for 两层循环应该能做到吧
作者: 仰望星空的猪    时间: 2015-11-22 21:16
*(*(p++)++)  试试这个 但是还是需要 i 和 j 进行控制
作者: blazehot18    时间: 2015-11-22 23:53
谢谢!我估计是不能实现,我想要的是行数通过i变量控制让后让表达式*(*(p+i)++),自增!代替j控制列!但是想了想,那样估计不行吧!估计表达式,不想变量有具体地址,或内存




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2