#include <stdio.h>
void swap (int x, int y);
void swap (int x, int y)
{
int temp;
temp=x;
x=y;
y=temp;
}
void main ()
{
int m=3 ,n=5;
printf("jiaohuanqian:m= %d,n=%d/n",m ,n);
swap (m,n);
printf("jiaohuanhou:m=%d,n=%d/n",m,n);
}
为什么不能交换值呢??
其实问题出在C语言函数调用上,调用方式为传值调用,这就好理解多了,原来的m和n的值丝毫没有改变,所以输出还是3 和5 !! 想要改变的话可以尝试传地址调用