C语言的二维数组名作参数传递会发生错误吗? c语言定义一个二维数组
更新时间:2021-12-09 19:06:25 • 作者:MONICA •阅读 6274
二维数组名作参数传递给子函数出错,如下:
void main()
{
int i;
int iAryNums[2][3]={0,0,0,0,0,0};
fun(*iAryNums,&i);
}
*iAryNums 表示的是iAryNums[0][0]的地址,而iAryNums表示的是iAryNums【0】的地址,虽然两个一样但是有在调用的时候有很大的区别.....具体的你自己看书吧
C语言问题,貌似二维数组参数传递格式错误!请高手指教!
二维数组的指针是形式是int (*a)【】,由于优先级不同,要加个括号的
C语言二维数组参数传递的问题
不能把第二维的大小省略,而你的函数三个参数第二维大小不同,没有办法传递,要么写三个函数
(在内存中数组是按照行存放的,因此在定义二维数组时,必须指定列数(即一行中包含几个元素))
C语言怎么以二维数组作为参数传递的问题
考虑要把a作为参数传入到print中,那么print函数就要定义一个接收二维数组的参数,那么什么参数能接收二维数组呢。
就是print(int (*newbuf)[3])
然后newbuf的地址就是a的地址,然后newbuf[i][j]来访问每一个元素了
有问题继续问哈,写的可能不太明白