交换函数几种写法

来源:互联网 发布:美工详情页思路 编辑:程序博客网 时间:2024/05/18 00:23
void swap(int *a,int *b){int temp;temp=*a;*a=*b;*b=temp;}void swap(int *a,int *b){*a=*a+*b;*b=*a-*b;*a=*a-*b;}//这样写 不严谨 可能产生溢出void swap(int *a,int *b){//这样 也不严谨 如果 两个数相等 异或之后会是0 *a=*a^*b;*b=*b^*a;*a=*a^*b;}
void swap(int &a,int &b){int temp;temp=a;a=b;b=temp;}void swap(int &a,int &b){a=a+b;b=a-b;a=a-b;}void swap(int &a,int &b){a=a^b;b=b^a;a=a^b;}