A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© atlas 中级黑马   /  2014-12-3 14:05  /  838 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

int ages[3] = {23, 34, 45};

average(int ages[],length)
{
...
}

C语言中数组作为函数参数传递的时候,数组名仅仅表示一个指针,指针的长度在64位编译器环境下是8个字节。
那么数组的长度(数组元素的个数)怎么计算呢?
其实是这样算的sizeof(ages)/sizeof(int),然后把这个长度作为length传递过去。

1 个回复

倒序浏览
本帖最后由 weizhang00 于 2014-12-4 13:41 编辑

c语言在数组上有缺陷,无法在传递后计算长度,需要另外传递一个长度参数,这是我目前掌握到的原来不是问啊
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马