温馨提示×

c语言字符串如何交换

小亿
300
2024-04-26 14:03:54
栏目: 编程语言

在C语言中,可以通过使用临时变量或者指针来交换两个字符串。

下面是使用临时变量的方法:

#include <stdio.h>
#include <string.h>

void swapStrings(char **string1, char **string2) {
    char *temp = *string1;
    *string1 = *string2;
    *string2 = temp;
}

int main() {
    char *str1 = "Hello";
    char *str2 = "World";

    printf("Before swapping:\n");
    printf("String 1: %s\n", str1);
    printf("String 2: %s\n");

    swapStrings(&str1, &str2);

    printf("\nAfter swapping:\n");
    printf("String 1: %s\n", str1);
    printf("String 2: %s\n");

    return 0;
}

另外,也可以使用指针来交换两个字符串:

#include <stdio.h>
#include <string.h>

void swapStrings(char **string1, char **string2) {
    char *temp = *string1;
    *string1 = *string2;
    *string2 = temp;
}

int main() {
    char str1[100], str2[100];

    printf("Enter string 1: ");
    gets(str1);

    printf("Enter string 2: ");
    gets(str2);

    printf("Before swapping:\n");
    printf("String 1: %s\n", str1);
    printf("String 2: %s\n", str2);

    char *ptr1 = str1;
    char *ptr2 = str2;

    swapStrings(&ptr1, &ptr2);

    printf("\nAfter swapping:\n");
    printf("String 1: %s\n", ptr1);
    printf("String 2: %s\n", ptr2);

    return 0;
}

0