C中值传递与地址传递

来源:互联网 发布:如何打开21端口 编辑:程序博客网 时间:2024/05/20 07:57
#include <stdio.h>void print(int a){(a)++;printf("a=%d\n",a);}int main(void){int b = 6;print(b);printf("%d\n" ,b);return 1;}//这种情况下就属于值传递,因为作用域和内存模型的原因,生命周期消亡,数据消失,故最后数据不变。

#include <stdio.h>void print(int * a){(*a)++;printf("a=%d\n",*a);}int main(void){int b = 6;print(&b);printf("%d\n" ,b);return 1;}//这种情况下属于地址传递,地址传递会改变值。

0 0
原创粉丝点击