为了账号安全,请及时绑定邮箱和手机立即绑定

看c程序设计语言碰到的一个疑问

看c程序设计语言碰到的一个疑问

C C# C++
不会说话的鱼 2017-09-15 11:36:12
在程序设计copy这个函数的时候,没有给copy函数一个return值,然后在主函数里面有进行调用,根据c语言函数的封装性可得,函数里面的变量只能再函数内部生效,那么在主函数里面调用copy这个函数不就是没有效果了吗,跪求慕课网的大神的解答
查看完整描述

1 回答

已采纳
?
onemoo

TA贡献883条经验 获得超454个赞

对,函数中的变量只在函数中有效,包括函数的形参。而且调用函数传参是值传递,也就是形参只是得到实参的值,你在函数中改变形参无法影响外面的实参。

但是当形参是数组类型时(也就是你这里的情形),有些不同

你可以简单地把数组类型形参当作和实参是一样的,所以在函数中操作形参数组就相当于操作外面的实参数组。


我不知道你学指针了没,实际上这是指针相关的知识:

函数形参为数组类型时,该形参相当于是数组元素指针类型。而调用函数传递实参数组时,相当于传入指向实参数组首元素的指针。 这样在函数中使用这个形参就相当于是使用指针,也就是利用指针来影响外部的实参了。  这是根本的解释,不过如果你还没学指针,就按照上一段来理解吧。

查看完整回答
反对 回复 2017-09-15
  • 1 回答
  • 0 关注
  • 1601 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信