恩!就是这个结果
int x,y 是全局变量,调用了num()后,接着又执行x=a+b;y=a-b;重新赋值了呀!
int x1=30,x2=40;main(){ int x3=10,x4=20;sub(x3,x4);sub(x2,x1);printf("%d,%d,%d,%d\n",x3,x4,x1,x2);}
sub(int x,int y) {x1=x;x=y;y=x1;}答案为10,20,40,40,想不通为什么x2为40。