C语言:当主函数向子函数传递一个数组名的问题。

比如主函数里:int a[4];fun(a);—然后子函数我是应该定义成void(int*a)还是void(int a[])?

如果定义数组是int a[4];的话,那么数组a的内存就会被系统释放,不能返回
如果定义数组是static int a[4];的话,那么数组a的内存可以返回到主函数里,也就是内存传递追问

不是很明白,我其实想知道为什么有时候我形参定义成*a错了,答案形参应该是a[],明明都能运行出来,void(int *a)和void(int a[])有什么区别?

温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-03-25
微软思钨蚌埠盟野
相似回答