C语言【交换两变量值】

发布时间 2023-12-02 20:08:41作者: 持枢丶

C语言【交换两变量值】

// 1、临时变量
int x = 10, y = 20;
int temp = x;
x = y;
y = temp;

// 2、相加再减的方法
int a = 10, b = 20;
a = a+b;
b = a-b;
a = a-b;

// 3、异或的方法,利用 A^A=0,  A^0=A 的特性
int i = 10, j = 20;
i^=j;
j^=i;
i^=j;
注意:如果存在两个指针指向同一个数的情况,通过指针操作时,第二第三种算法会出错,因为修改的都是同一个数。