c语言交换两个字符:
方法一:利用指针传址,效率比较高
void swap(int *a,int *b)
{
int temp;
temp = *a;
*a = *b;
*b = temp
}
方法二:利用引用加减或乘除运算来交换,存在缺陷,有可能导致溢出
swap(int &a,int &b)
{
a = a+b;//a=a*b;
b = a-b;//b=a/b;
a = a-b; //a=a/b;
}
方法三:引用异或
void swap(int &a,int &b)
{
a ^= b;
b ^= a;
a ^ =b;
}
c语言交换两个字符串:利用指针改变地址
void swap(char **a,char **bb)
{
char *temp;
*temp = *a;
*a = *b;
*b = *temp;
}