我写了一个简单的代码来反转一个字符串,但我得到一个奇怪的输出。例如,如果我输入“hello”,我会输出“qlleh”,我真的不知道为什么。
以下是代码:
#include <iostream>
#include <string>
using namespace std;
int main(int argc, char* argv[])
{
int a = 0;
char s[1024],r[1024];
cout<<"Enter a string:";
cin>>s;
for(int i = char_traits<char>::length(s); i >= 0; i--){
//if(isalpha(s[i]))
r[a++] += s[i];
}
cout<<r;
}
答案 0 :(得分:1)
您只想使用'='。 '+ ='将添加并增加实际字符值。因此,'a'+ 2 ='c'。