作者MaxHaru (懂得放手..才是王道)
看板C_and_CPP
标题[问题] 关於二维阵列
时间Sun Dec 4 14:36:58 2016
请教一个关於阵列的问题, 说明如下,
我有两个二维阵列
unsigned char arr1[2][2] = {{1,2},{3,4}};
unsigned char arr2[2][2] = {{5,6},{7,8}};
我想用另一个阵列将两个二阵列的位置存起来, 该如何宣告变数型态
unsigned char**pArr[2] = {arr1, arr2}; //不确定这样宣告对不对..
我想再用一个变数将pArr中的二维阵列位址取出来并当二维阵列一样使用
unsigned char**Var; //不确定是否正确
Var = pArr[0]; //不确定是否正确
printf("%d", Var[0][0]);
以上, 我有试着在Ideone上跑跑看(
http://ideone.com/jUPUp9 )
compile没有问题, 但执行时会出现误会讯息..
请问是否哪个地方用错了?
谢谢..
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 1.161.217.175
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_and_CPP/M.1480833421.A.4D1.html
1F:→ stupid0319: 用错了,直接arr1,arr2来存取就好了XD,下面通通删掉 12/04 14:45
2F:推 steve1012: 要三个星星 12/04 14:58
3F:→ steve1012: 你把pArr改三个星星 12/04 14:59
4F:推 steve1012: 呃然後前面也要改 12/04 15:02
5F:→ stupid0319: 用双重指标来存取二维阵列?别浪费生命了...... 12/04 15:07
6F:→ stupid0319: 阵列跟指标还是有所不同的,不能这样搞 12/04 15:08
7F:推 steve1012: 不能? 12/04 15:14
8F:推 CoNsTaR: 13 戒之 12 不管几维阵列都是一个 star 12/04 15:15
9F:→ CoNsTaR: c/c++ 的阵列和 Java 的不一样 12/04 15:16
10F:推 steve1012: 喔喔我错了Qq 12/04 15:18
11F:推 steve1012: 我只是在想要是你是在用pointer 模拟的话做的到 但就 12/04 15:20
12F:→ steve1012: 不是阵列 12/04 15:20
13F:→ MaxHaru: 谢谢大家的回应, 因为实际应用上2维阵列还蛮多的, 12/04 15:37
14F:→ MaxHaru: 又需要透过index去调用, 所以须要用一个阵列来处理, 12/04 15:38
15F:→ MaxHaru: 请问一下有其它的方法可以做到类似的功能吗? 12/04 15:39
16F:推 DrizzleX: 痾 你是想两个绑在一起吗 那试试看struct 12/04 16:06
17F:推 CoNsTaR: T a[N], b[N]; 12/04 16:13
18F:→ CoNsTaR: T* p[2] = {a,b}; 12/04 16:13
19F:→ CoNsTaR: 你是想把两个阵列当作一个用,像这样? 12/04 16:13
20F:→ MaxHaru: 预期做法是"pArr[n]"这个阵列存的是2维阵列的位址.. 12/04 16:16
21F:→ MaxHaru: Var从pArr[n]取出来之後, 可以像Var[1][2]来使用二维阵列 12/04 16:19
22F:推 CoNsTaR: 可以做到,但是没有你想像的那麽方便 建议先学资料结构 12/04 16:30
23F:→ CoNsTaR: T a[M][N], b[M][N]; 12/04 16:30
24F:→ CoNsTaR: T* p[M] = {a[0],..,a[M-1]}; 12/04 16:30
25F:→ CoNsTaR: T* q[M] = {b[0],..,b[M-1]}; 12/04 16:30
26F:→ CoNsTaR: T** r[2] = {p,q}; 12/04 16:30
27F:→ stupid0319: 明明就直接用arr1,arr2存取就好了,为什麽要化简为繁? 12/04 16:35
28F:→ CoNsTaR: 楼上 我是觉得原 Po 如果藉由这个例子能弄清楚阵列和指 12/04 16:41
29F:→ CoNsTaR: 标的关系其实是满值得的啦 12/04 16:41
30F:→ stupid0319: 好吧,多写一些自虐的CODE真的会变强吗XD 12/04 16:45
31F:推 chuegou: 会阿 心理会变强(笑) 12/04 18:41
33F:→ hunandy14: 你是想要这样吧~不过我觉得优化一下会比较好~~ 12/04 19:00