法一
void swap(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
return ;
}
法二
#define swap(a, b) ({\
__typeof(a) temp = a;\
a = b;\
b = temp;\
})
法三
void swap3(int *a, int *b) {
*a += *b;
*b = *a - *b;
*a -= *b;
return ;
}
法四
void swap(type *a, type *b) {
type temp = *a;
*a = *b;
*b = temp;
return ;
}
法五
#define swap(a, b) {\
a ^= b; b ^= a; a ^= b;\
}
法六
#define swap(a, b) {\
a += b; b = a - b; a = a - b;\
}
法七
#define swap(a, b) {\
a *= b; b = a / b; a = a / b;\
}