当前位置: 代码迷 >> 综合 >> [Error] cannot convert 'std::string {aka std::basic_string} to 'char' in assignment
  详细解决方案

[Error] cannot convert 'std::string {aka std::basic_string} to 'char' in assignment

热度:54   发布时间:2024-01-25 08:42:15.0

在做c++字符串反转时,出现报错“[Error] cannot convert 'std::string {aka std::basic_string<char>} to 'char' in assignment”

源代码如下:

#include<iostream>
#include<string.h>
using namespace std;
int main(void){string str = "";string t = "";cin>>str;int index = str.size(); for(int i = 0;i < str.size() / 2;i++){t = str[i];str[i] = str[index - 1];str[index - 1] = t;index --;}cout<<str;return 0;
}

修改方法:把string t = "" 替换为 char t = ' ' (注意要有一个空格)

修改后的代码:

#include<iostream>
#include<string.h>
using namespace std;
int main(void){string str = "";char t = ' ';cin>>str;int index = str.size(); for(int i = 0;i < str.size() / 2;i++){t = str[i];str[i] = str[index - 1];str[index - 1] = t;index --;}cout<<str;return 0;
}

程序正常运行通过!

  相关解决方案