内存空间的不可调用原则
#include<stdio.h>
int swap(int x,int y);
int main()
{
int a=1;
int b=2;
swap(a,b);
printf("a=%d,b=%d",a,b);
return 0;
}
int swap(int x,int y)
{
int temp;
temp=a;
a=b;
b=temp;
}
程序本意是交换调换 a 和 b 的值,但是没注意到内存空间的不可调用原则,所以程序应该修改:
#include<stdio.h>
int swap(int *x,int *y);
int main()
{
int a=1;
int b=2;
swap(&a,&b);
printf("a=%d\nb=%d\n",a,b);
return 0;
}
int swap(int *x,int *y)
{
int temp;
temp=*x;
*x=*y;
*y=temp;
}