当前位置: 代码迷 >> C语言 >> 数组的指针做参数
  详细解决方案

数组的指针做参数

热度:146   发布时间:2007-11-21 16:42:26.0
数组的指针做参数

对于 void process(char *p,int (*q)[10])函数,第二个参数是一个数组的指针,为什么对于第二个参数一定是例如int a[8][10]; 的二维数组
而不能是int (*a)[10];类型的数组的指针变量呢??

void main()
{
//int (*a)[10]; // error ??
int a[8][10]; // right
char *numbers="a123*456 17960?302ta1b5897";
//printf("%s",numbers);
process(numbers,a);
}

搜索更多相关的解决方案: 指针  参数  numbers  void  process  

----------------解决方案--------------------------------------------------------
int (*a)[10];
int a[8][10]; /* 其定义覆盖了 int (* a)[10]; 的定义*/

作用域问题。

a[8][10] 的标识符与 (* a)[10] 标识符是一样的。

[此贴子已经被作者于2007-11-21 17:12:55编辑过]


----------------解决方案--------------------------------------------------------
char (*a)[10];
int a[8][10];

这样的话好现是对的哦
记得命名空间不一样
----------------解决方案--------------------------------------------------------
  相关解决方案