如题所述
普通变量是直接传值
指针变量传递地址
引用变量是隐式传地址,如void f(int &x),实际传递的是x的地址p,但是函数内部使用x时会自动变成*p
void f(int &x) {x++}; 会变成
void f(int *p) {(*p)++};
指针变量传递地址
引用变量是隐式传地址,如void f(int &x),实际传递的是x的地址p,但是函数内部使用x时会自动变成*p
void f(int &x) {x++}; 会变成
void f(int *p) {(*p)++};
温馨提示:答案为网友推荐,仅供参考
第1个回答 2009-02-20
C语言的函数都是传值,其参数是
普通变量时,不影响实参
引用变量时,可修改实参值
指针变量时,不影响指针本身,但通过指针可影响其指向的变量的值
普通变量时,不影响实参
引用变量时,可修改实参值
指针变量时,不影响指针本身,但通过指针可影响其指向的变量的值