c语言中的结构体二维数组做参数问题
发布网友
发布时间:2022-04-20 06:26
我来回答
共1个回答
热心网友
时间:2022-05-23 16:48
1、如果在函数外定义的结构数组,又要在一个函数中进行输入、输出,通常情况下,其参数传递类型需要传址,即
void shuchu(struct std **cansu);
void shuchu(struct std *cansu[]);
这样调用改为 shuchu(&aa);
对函数内的相应操作改为指针操作即可。
2、通常情况下,对于一个系统设计而言,其输入输出是分开的,也即在2个函数中,从系统分析而言,建议分开。当然,就测试而言,是可以的。
3、如果一定要采用2维数组做参数,按照对于*数组做参数的要求,前几维一定要给出确切的数值
如2维: void shuchu(struct std cansu[5][]) 就可以了。
热心网友
时间:2022-05-23 16:48
1、如果在函数外定义的结构数组,又要在一个函数中进行输入、输出,通常情况下,其参数传递类型需要传址,即
void shuchu(struct std **cansu);
void shuchu(struct std *cansu[]);
这样调用改为 shuchu(&aa);
对函数内的相应操作改为指针操作即可。
2、通常情况下,对于一个系统设计而言,其输入输出是分开的,也即在2个函数中,从系统分析而言,建议分开。当然,就测试而言,是可以的。
3、如果一定要采用2维数组做参数,按照对于*数组做参数的要求,前几维一定要给出确切的数值
如2维: void shuchu(struct std cansu[5][]) 就可以了。