作者kobe123 (波波)
看板C_and_CPP
标题[问题]指标指向二维阵列
时间Sun Jul 19 17:15:34 2009
请问我程式这样写
int a[10][10];
int *ptr = a;
为什麽编译一直错误??写cannot convert
我查过书,书上就这样写,照理说应该是OK的
我用一维矩阵这样写也OK但换二维不行了
Why?
还是指标指向二维阵列有其他用法??
谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 122.124.81.131
1F:推 zlw:int (*ptr)[10] = a; 或 int (&ptr)[10][10] = a; 07/19 17:19
2F:推 zlw:因为一维跟二维是不同资料型态,而『C++』会检查资料型态 07/19 17:24
3F:→ kobe123:请问那c和c++用法是一样的吗?如果用c的话有别的用法吗? 07/19 17:27
4F:→ kobe123:因为这用法跟书上写的不太一样有点搞不清是如何运作 07/19 17:28
5F:推 zlw:用法一样,只是C的编译器没有强制规定 = 两边的资料型态要相同 07/19 17:29
6F:→ zlw:int *ptr = (int *)a; 这样就会转换 a 的资料型态了 07/19 17:29
7F:→ kobe123:感谢大大 07/19 17:36