标题:数组的指针做参数
只看楼主
vfdff
Rank: 6Rank: 6
等 级:侠之大者
威 望:8
帖 子:2172
专家分:425
注 册:2005-7-15
结帖率:79.17%
 问题点数:0 回复次数:2 
数组的指针做参数

对于 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 
2007-11-21 16:42
cosdos
Rank: 9Rank: 9Rank: 9
来 自:ShangHai
等 级:蜘蛛侠
威 望:6
帖 子:2109
专家分:1385
注 册:2007-6-19
得分:0 
int (*a)[10];
int a[8][10]; /* 其定义覆盖了 int (* a)[10]; 的定义*/

作用域问题。

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

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


—>〉Sun〈<—
2007-11-21 17:10
yangyang321
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2007-11-25
得分:0 
char (*a)[10];
int a[8][10];

这样的话好现是对的哦
记得命名空间不一样
2007-11-25 16:40



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-187626-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026433 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved