衝啊!pointer!
今日主題:函數的傳址呼叫
上例的a, b參數不管在函數中怎麼操作,都不會影響到原來的x , y。若是要改變參數x, y, 則可以用傳址呼叫。
請看程式碼:
#include <stdio.h>
void swap(int *, int *);
main()
{
int x = 1, y = 99;
printf("%d, %d\n", x, y); //1, 99
swap(&x, &y);
printf("%d, %d\n", x, y); //99, 1
}
void swap(int *a, int *b){
int temp;
temp = *a;
*a = *b;
*b = temp;
}