C语言 答案为什么是8 4 #includevoid f(int y,int *x){y=y+*x;*x=*x+y;}main(){int x=2,y=4;f(y,&x);printf("%d %d\n",x,y);}

来源:学生作业帮助网 编辑:作业帮 时间:2024/10/04 20:05:30
C语言 答案为什么是8 4 #includevoid f(int y,int *x){y=y+*x;*x=*x+y;}main(){int x=2,y=4;f(y,&x);printf(
x͐J@_eT3.l| 71iP &HB&mqeRėL[Lͅs93Wsb 8d ~tch#u]6%ب,!щ,aUºen6aicZXTvk j@ ˞\bF EMEQWE!&0)1p:tX],neϯ["lӯ% lxVe~nfF,|?zC[c?{h:QM>:9є[L?-|

C语言 答案为什么是8 4 #includevoid f(int y,int *x){y=y+*x;*x=*x+y;}main(){int x=2,y=4;f(y,&x);printf("%d %d\n",x,y);}
C语言 答案为什么是8 4
#include
void f(int y,int *x)
{y=y+*x;
*x=*x+y;
}
main()
{int x=2,y=4;
f(y,&x);
printf("%d %d\n",x,y);
}

C语言 答案为什么是8 4 #includevoid f(int y,int *x){y=y+*x;*x=*x+y;}main(){int x=2,y=4;f(y,&x);printf("%d %d\n",x,y);}
f(y,&x); => function f
因为y没有修改原内存内容,所以没有修改,而x因为用指针修改了原内容,所以等同于在原函数x+=y.