swap的三种方式

来源:互联网 发布:开关电源电路仿真软件 编辑:程序博客网 时间:2024/05/21 12:32
#include <stdio.h>#define LEN 4void swap1(int *x, int *y){*y = *x ^ *y;*x = *x ^ *y;*y = *x ^ *y;} void swap2(int *x, int *y){*x = *x + *y;*y = *x - *y;*x = *x - *y;} void swap3(int *x, int *y){int t;t = *x;*x = *y;*y = t;}int main(){int i,j,k;int array[LEN] = {1, 2, 3, 4};for(i = 0, j = LEN-1; i < j; i++, j--)swap1(&array[i], &array[j]);for(k = 0; k < LEN; k++)printf("~~%d~~\n",array[k]);}