C++ 为什么不能这样直接用函数修改全局变量的值?

如图我的输出结果依旧为China在逐语句调试过程中发现encryption(c1)等语句并没有修改c1的值... 如图 我的输出结果依旧为China 在逐语句调试过程中发现 encryption(c1)等语句并没有修改c1的值 展开
 我来答
帐号已注销
2020-10-26
知道答主
回答量:6
采纳率:0%
帮助的人:1.2万
展开全部
使用按引用传参。即将函数修改为 void encryption(char&x)即可。
因为按引用方式传参,引用相当于是外部变量的别名,实际操作的就是该变量,在函数内对该变量进行修改的话,在外部该变量也会相应被修改。
而按值方式传参,实际上是复制了一个外部变量的副本进入函数中,在函数内操作的为该副本,对该变量的修改并不会实际修改函数外的该变量。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式