C++ 二维数组参数传递的实现方法
C++二维数组参数传递的实现方法
inta[2][2]={{4,6},{9,11}};
我定义了这样一个数组,我想把这个数组作为参数,传递到一个函数中,并要在函数中能引用该二维数组的元素,我该怎么做?
第一种方式是直接传递二维数组,但是必须标明第二维的值,因为如果只是传递a[][],编译器无法分配这样的数组,所以要这样传inta[][3]
第二种方法是传递指针数组方式,即int(*a)[3]
第三种是传递指针方法。
具体实施见代码:
方法1:传递数组,注意第二维必须标明
//二维数组传参问题示例 #includeusingnamespacestd; //方法1:传递数组,注意第二维必须标明 voidfun1(intarr[][3],intiRows) { for(inti=0;i 方法二:一重指针
voidfun2(int(*arr)[3],intiRows) { for(inti=0;i方法三:指针传递,不管是几维数组都把他看成是指针,
voidfun3(int*arr,intiRows,intiCols) { for(inti=0;iusingnamespacestd; voidfun(int*a,intlength) { inti; for(i=0;i 如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持,大家共同进步!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。