函数调用
void fun( int *x, int *y){ print f("%d %d",*x,*y);*x=3;*y=4;}
main( )
{ int x=1, y=2;
fun(&y, &x);
printf("%d %d", x, y);}
这个程序的运行结果为啥是2 1 4 3 主函数传递的是x,y的地址,在fun函数运行之后可以改变主函数的x,y,
这一点你可以去看指针 你还记的昨天你发的那个帖子吗?那个是值传递,这个恰恰相反是址传递。
址传递,传进函数的参数是变量地址,在函数中修改变量,就直接将实参修改了
页:
[1]