哪里错了呢,二维数组如果不能这样读取第m行第n列,应该怎么做
c4droid吧
全部回复
仅看楼主
level 4
千骥
楼主
哪里错了呢,二维数组如果不能这样读取第m行第n列,应该怎么做呢?
2017年12月04日 10点12分
1
level 4
千骥
楼主
2017年12月04日 10点12分
2
level 4
千骥
楼主
应该来说,取二维数组内容,先找到列的门牌号,再找到行的门牌号,应该这样就行了呀,怎么segmentation fault 呢?
2017年12月04日 10点12分
3
level 2
乜一笑
P要先申请内存
2017年12月04日 10点12分
4
千骥
如何申请内存呢?写在main函数前吗?
2017年12月04日 11点12分
level 9
飞舞云尖
比加如下
char *ps[6];
for(int i=0;i<6;i++)
ps[i]=num[i];
p=ps;
然后再使用p。
2017年12月05日 04点12分
7
千骥
好像明白了什么,等晚上试试
2017年12月05日 07点12分
千骥
为什么加了这个就可以用了呀?
2017年12月05日 10点12分
飞舞云尖
@千骥
首先指针必须先赋值才能使用指针指向的值。 指向指针的指针指向的是一组指针。一个指针指向一组数据。 当然这里的一组可以是一个,也可以是很多。
2017年12月05日 11点12分
level 4
千骥
楼主
2017年12月05日 13点12分
8
飞舞云尖
这样用是错的,多维数组只有一个指针。不是指针组。
2017年12月06日 03点12分
千骥
@飞舞云尖
是不是就是说,我这个二维指针是个地址未知量,要知道就必须从变量的地址来获得,而获得方式就是知道它的长度,这样二维数组就可以确定了,是吗?
2017年12月06日 06点12分
飞舞云尖
@千骥
不是,二维指针里的每一个成员都是指针,它每移动一个量就指向下一个指针,每一的指针都指向一个地址段(地址段不一定是连续的),地址段里应该是指定类型的数据串。 你必须为你会用到的每一个指针都赋值,否则当你移动到下一个指针时,那个指针不知道指向哪里。
2017年12月06日 13点12分
飞舞云尖
@千骥
二维数组则完全不同,他只是一个连续地址段。如s[m][n]是告知编译器在m维加1需要跳过n个数据,s[2][4]等同于一维的s[2*n+4]。
2017年12月06日 13点12分
level 1
贴吧用户_7A4P9b7
可以发下汉化版链接吗
2017年12月05日 15点12分
10
千骥
不知道,我也是找别人要的下载包
2017年12月06日 06点12分
1