如何在不使用临时字符串和C lib的情况下反转字符串?

詹姆斯·H

我试图在不使用临时字符串的情况下反转字符串,但是当我执行程序时olllo,结果却不是olleH

这是我的代码:

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

    int main(){
        char *str = strdup("Hello");
        int reverse(char * str){
            int i=0;
            int j = strlen(str)-1;
            while(i<=j){
                (str[i]) = (str[j]);
                i++;
                j--;
            }
        return 0;
        } 
        reverse(str);
        printf("string = %s\n", str);
        return 0; 
    }
阿米娜

您不能做这种事情,因为您char *str是一个常量变量:您只是在其中放入了一些东西而未使用任何动态内存分配函数(例如)malloc()除非您重复它,否则您不能修改该指针的内容。

strdup(char *)像这样使用

char * str = strdup("Hello");

然后,您将能够修改您的字符串内容。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在不使用内置 c# 方法的情况下反转字符串

在不使用指针的情况下反转字符串

如何在不使用命令Sed的情况下查找和替换字符串?

在不使用交换功能的情况下反转不可编辑的字符串

在不使用任何库函数的情况下反转字符串

我想在不使用内置函数的情况下反转 javascript 中的字符串

如何在 C 中不使用括号的情况下修改字符串文字的内容?

c# - 如何在不使用数组或拆分函数的情况下拆分字符串#

如何在没有内置函数的情况下反转字符串javascript?

如何在不影响R中数字的情况下反转字符串?

如何在不改变单词位置的情况下反转字符串

如何在不使用笔划的情况下根据特定字符拆分字符串

如何在不使用 Hashmap 的情况下对字符串中的字符重新排序?

试图在没有字符串函数的情况下反转字符串但不能在 c 中工作

如何在不使用_layout查询字符串参数的情况下重新加载页面

如何在不使用js的情况下将java中的json字符串化

如何在不使用库函数的情况下将字符串转换为数字

如何在不使用连续定界符空格的情况下拆分字符串

如何在不使用.replace的情况下替换Java字符串中的单词

如何在不使用数组的情况下删除字符串中的重复单词?

如何在不使用 javascript 中的替换函数的情况下替换字符串?

如何在不使用正则表达式的情况下解析字符串

如何在不使用数组,split()或StringBuilder的情况下逐字逆转字符串

如何在不使用eval()的情况下从字符串运行javascript对象

如何在不使用反斜杠的情况下转义整个字符串?

如何在不使用字符串的情况下将Python字典写入文件?

如何在不使用rand()函数的情况下获取固定长度的字符串

如何在不使用bash命令替换的情况下执行输出字符串?

SQL:如何在不使用反向函数的情况下检查字符串的回文?