在C语言中,可以通过使用临时变量或者异或运算来实现字符串的调换。
方法一:使用临时变量
#include <stdio.h>
#include <string.h>
void swapStrings(char* a, char* b) {
char temp[100];
strcpy(temp, a);
strcpy(a, b);
strcpy(b, temp);
}
int main() {
char str1[100] = "Hello";
char str2[100] = "World";
printf("Before swap: str1 = %s, str2 = %s\n", str1, str2);
swapStrings(str1, str2);
printf("After swap: str1 = %s, str2 = %s\n", str1, str2);
return 0;
}
方法二:使用异或运算
#include <stdio.h>
#include <string.h>
void swapStrings(char* a, char* b) {
int length = strlen(a);
for (int i = 0; i < length; i++) {
a[i] = a[i] ^ b[i];
b[i] = a[i] ^ b[i];
a[i] = a[i] ^ b[i];
}
}
int main() {
char str1[100] = "Hello";
char str2[100] = "World";
printf("Before swap: str1 = %s, str2 = %s\n", str1, str2);
swapStrings(str1, str2);
printf("After swap: str1 = %s, str2 = %s\n", str1, str2);
return 0;
}
以上两种方法都可以实现字符串的调换,你可以根据自己的需求选择其中一种方法。