函数传递多维数组

一维数组作为函数参数可以写成: f(int * array , int size) 或者 f(int array[] , int size) ([]中的数组的维数可选)

二维数组作为函数参数可以写成:f(int array[][10] ,int size1 ,int size2 ,....)的形式,除了第一维的参数可以省略,其他的参数必须显示说明。以上面为例,编译器寻找array[3][3]的地址时通过(array+3*10+3)得到,若不指定其他的维数,则编译器无法计算元素地址。

二维数组作为函数参数也可以通过指针的方式传递,比如f(int **array,int size1,int size2) size2为第二维的维数,得到某一元素的地址需要手动计算,比如array[3][3]的指针为((int *)array+3*10+3)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值