C++问题求解,利用指针,编写一个函数将字符串反序在主函数中调用该函数将用户输入的一个字符串反序输出

2025-04-04 16:30:24
推荐回答(3个)
回答1:

char *a=str;
char *b=str+strlen(str);
这两句的语法错了,重复声明了两个指针的类型,str的指针顺序你给改过来了,你是想通过这个顺序改变字符串的输出顺序,但是a,b在这里是局部变量,没有改变str的顺序,甚至最后str都没有输出结果,建议把a,b改为全局变量后再继续你的思路做

回答2:

char *b=str+strlen(str);

这句错了,应该是
char *b=str+strlen(str)-1;

str+strlen(str);指向的是字符串最后一个字符的下一个位置,也就是'\0'的位置
例如字符串str = "abc",strlen(str)=3

'a' 'b' 'c' '\0'
str +1 +2 +3

回答3:

基础