C语言:数组函数

今天学习了C语言的数组函数

1.数组元素作函数实参

由于实参可以是表达式,而数组元素可以是表达式的组成部分,因此数组元素当然可以作为函数的

实参,与用变量作实参一样,是单向传递,即“值传送”方式。

2.数组名作函数参数

传递数组名本质上是指针,只传递了首元素地址,无法判断元素的个数,因此传参时还要传递第二个参数len;

二维数组在传参时要穿行数(rows),函数定义时,列数(cols)要是一个固定值;

数组函数的传参是指针传参,会改变实参,因此可以在被调函数中修改主调函数的参数;

3.参数与const

参数前有const表明该参数既可以是常量也可以是数组名;

没有conts表明该参数只能是数组名,不能是常量;

4.sizeof

int a[100];

在被调函数中,sizeof(a)= 8,这是因为sizeof打出的是数组a的首元素的地址长度;

而在主调函数中,sizeof(a)= 100;这是因为sizeof打出的是数据类型的长度;

这里是由于C语言的定义不够清晰导致这种情况;

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值