以下内容只用于学习记录,如有错误望指正 。
这是不通过第三变量来实现变量的交换
第一种是通过将数值的相加和两次相减来使数据互换的效果
第二种使异或的使用
1 #include<stdio.h> 2 int main( int argc , char** argv) 3 { 4 int var1 = 12, var2=9; 5 var1=var1+var2; 6 var2=var1-var2; 7 var1=var1-var2; 8 printf("The var1 is : %d and var2 is : %d",var1 ,var2); 9 var1^=var2; 10 var2^=var1; 11 var1^=var2; 12 printf("The var1 is : %d and var2 is : %d ", var1 . var2); 13 14 15 16 17 18 19 return 0; 20 }
The Var1 is :9 and Var2 is : 12 The Var1 is : 12 and Var2 is :9