这个程序,传给被调用函数的不是变量值的一份拷贝吗?那为什么可以改变主函数中变量的值?
它传给被调函数的不是地址啊,为什么可以改变a的值呢
#include <stdio.h>
char fun (char &a)
{
a = 'f';
}
int main(void)
{
char a ='e';
fun (a);
printf ("%c", a);
}
[解决办法]
谷歌下 传引用
[解决办法]
传过去的是地址,改变时是改变地址里面的值,当然就改变a的值了。因为a是存在这个地址里面的。
[解决办法]
传的不是指针,而是和指针差不多的东西,这玩意叫引用。其实传递的是变量本身。