返回信息流c中把数组传递给函数时,书上说,除了指定数组名,也一定要把数组大小传过去,如:
void modifyArray(int b[],int size)
但其后的大部分例子并没要把数组大小一并传过去;
问, 数组以实参的形式传给函数时,真必须要一并把大小传过去吗,传与不传的区别?
这里就说用数组名传,不是用指针
谢~
还弱问 主函数 int main() 与 int main(void)间啥区别?
这是一条镜像帖。来源:北邮人论坛 / cpp / #28558同步于 2009/9/16
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖
新手求解: c中把数组传递给函数时
sdy8282
2009/9/16镜像同步24 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
函数参数中,数组转化为指针
main() 不就是 main(void)么…………
【 在 sdy8282 的大作中提到: 】
: c中把数组传递给函数时,书上说,除了指定数组名,也一定要把数组大小传过去,如:
: void modifyArray(int b[],int size)
: 但其后的大部分例子并没要把数组大小一并传过去;
: ...................
正解
【 在 abobo 的大作中提到: 】
: 数组名做为函数参数会退化为指针,实际函数内部并不知道你数组的长度,所以要用到数组长度时需要把数组的大小也作为函数的参数
【 在 abobo 的大作中提到: 】
: 数组名做为函数参数会退化为指针,实际函数内部并不知道你数组的长度,所以要用到数组长度时需要把数组的大小也作为函数的参数
那首先不是书上说的,一定要一并把数组大小传过去? 只有在用的时候再传过去?(啥时叫用呢)
书怎么翻译的那么肯定,说必须
现在发现自己很懒得打字了。。。
常量是否占用内存取决于编译器。一般情况下,常量仅仅只是个不会改变的数值,所以不需要分配内存。当然,如果比较极端的就是,vc的debug模式的常量,为了便于调试,居然也分配了内存,呵呵,这是特殊情况,忽略就是了。
zh
【 在 sdy8282 的大作中提到: 】
: 那首先不是书上说的,一定要一并把数组大小传过去? 只有在用的时候再传过去?(啥时叫用呢)
: 书怎么翻译的那么肯定,说必须
定义的函数里面是个形式参数而已!告诉那个数组类型,实际情况后面不是还有个int n来说明了么!