c语言

c语言将字符串逆置的方法是什么

小亿
161
2023-11-21 03:30:52
栏目: 编程语言

C语言中,可以通过以下几种方法将字符串逆置:

  1. 使用指针:定义两个指针,一个指向字符串的起始位置,一个指向字符串的末尾位置,然后通过交换两个指针指向的字符来逆置字符串。循环交换直到两个指针相遇。
void reverseString(char* str) {
    if (str == NULL) {
        return;
    }
    
    char* start = str;
    char* end = str + strlen(str) - 1;
    
    while (start < end) {
        char temp = *start;
        *start = *end;
        *end = temp;
        
        start++;
        end--;
    }
}
  1. 使用数组:可以创建一个新的字符数组,将原字符串中的字符从末尾开始逐个复制到新数组中,即可得到逆置后的字符串。
void reverseString(char* str) {
    if (str == NULL) {
        return;
    }

    int length = strlen(str);
    char reversed[length + 1];
    
    for (int i = length - 1; i >= 0; i--) {
        reversed[length - 1 - i] = str[i];
    }
    reversed[length] = '\0';
    
    strcpy(str, reversed);
}

这两种方法都可以实现字符串的逆置,具体使用哪种方法取决于实际需求和个人偏好。

0
看了该问题的人还看了