需求:將 b 的值給 a,c 的值給 b,a 的值給 c。需引入暫存變數:
int a = 1, b = 2, c = 3;
int temp = a;
a = b;
b = c;
c = temp;
// 結果:a=2, b=3, c=1
若為指標版本:
void rotate(int *a, int *b, int *c)
{
int temp = *a;
*a = *b;
*b = *c;
*c = temp;
}
注意:a = b; b = c; c = a; 會導致錯誤,因 a 已被覆寫。