int 或者 char 型:
方法一:算术
x = x + y;y = x - y;
x = x - y;
方法二:异或
x = x^y;// 只能对int,char..y = x^y;
x = x^y;
x ^= y ^= x;
对于字符串的交换:
void strswap(char *str1, char *str2)
{
while (*str1 && *str2)
{
*str1 ^= *str2;
*str2 ^= *str1;
*str1++ ^= *str2++;
}
if (*str1)
{
while (*str2 == *str1)
++str2, *str1++ = '\0';
}
else
while (*str1 == *str2)
++str1, *str2++ = '\0';
}