調(diào)換問題..
#include <stdio.h>
vioid change(int a, int b)
{
??? int tmp =a;
??? a=b;
??? b=tmp;
}
int main()
{
int a=5;
int b=3;
change(a,b);
printf("num a=%d\nnum b=%d\n",a,b);
return 0;
}
這個程序不能實(shí)現(xiàn) 調(diào)換數(shù)值 而本節(jié)的數(shù)組卻可以 為什么
2016-01-13
我知道是要用指針 ,但是本節(jié)的數(shù)組排序, 沒有用指針卻也可以實(shí)現(xiàn)交換,為什么
2016-01-13
void change(int *n, int *m)
{
?? ?
??? int temp;
?? ?
??? temp = *n;
?? ?
??? *n = *m;
?? ?
??? *m = temp;
?? ?
}
int main()
{
??? int a = 5, b = 3;
??? change(&a,&b);
?? ?
??? printf("num a=%d\nnum b=%d\n",a,b);
?? ?
??? return 0;
?? ?
}
換成這樣就可以了,通過交換變量地址的交換就可以了