C语言字符串反转而不使用额外空间

发布时间:2024-08-30 13:11:30 作者:小樊
来源:亿速云 阅读:79

在C语言中,可以通过交换字符串首尾的字符来实现字符串反转,而不需要使用额外的空间。以下是一个示例代码:

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

void reverse_string(char *str) {
    int len = strlen(str);
    for (int i = 0; i < len / 2; i++) {
        char temp = str[i];
        str[i] = str[len - 1 - i];
        str[len - 1 - i] = temp;
    }
}

int main() {
    char str[] = "Hello, World!";
    printf("Original string: %s\n", str);
    reverse_string(str);
    printf("Reversed string: %s\n", str);
    return 0;
}

这段代码首先计算字符串的长度,然后通过一个循环交换首尾字符,直到到达字符串的中间位置。注意,这种方法会修改原始字符串。如果需要保留原始字符串,可以先复制一份再进行反转操作。

推荐阅读:
  1. c语言整型变量怎么用浮点型输出
  2. C语言如何统计单词个数

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

c语言

上一篇:C语言字符串截取特定长度的子串

下一篇:C语言字符串中的模式匹配算法比较

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》