这里不写什么概念,直接上代码
#includeint Change(int a) { a = 1; return a; } int main() { int a = 0; printf("没有改变前的值:%dn", a); Change(a); printf("改变后的值:%dn",a); return 0; }
没有改变前的值:0
改变后的值:0
总结:
Change(a)为形参,
a=1实参
实参只是形参的零时的拷贝,实参的改变不会影响实参!!!
(在学习结构体与链表的时候非常重要)
那么如何解决
指针 (传值调用)
#includeint Change(int *a) { *a = 1; return *a; } int main() { int a = 0; printf("没有改变前的值:%dn", a); Change(&a); printf("改变后的值:%dn",a); return 0; }
没有改变前的值:0
改变后的值:1



