[英]Convert char to const char* String Insert C++
我对String Insertion
有问题,因为我不能添加char,只能添加const char。 我如何轻松转换它?
编译器只是这样接受:
b.insert(i,"a");
但我想这样:
b.insert(i,b[ii]);
完整代码:
#include <stdio.h>
#include <string.h>
#include <string>
#include <iostream>
using namespace std;
int main()
{
string a,b;
int aa=0;
cin >> a;
b=a;
for(int i=0;i<a.length()+1;i++)
{
for(int ii=0;ii<a.length();ii++)
{
b.insert(i,a[ii]);
if (b == string(b.rbegin(), b.rend()))
{
cout << b << endl;aa=1;
break;
}
b.erase (b.begin()+i);
}
if(aa=1)break;
}
if(aa==0)
cout << "NA" << endl;
return 0;
}
请参阅std::string::insert
的文档。 采用单个char
的版本也需要一个count参数。
b.insert(i,1,b[ii]);
您应该使用以下std::string::insert
重载:
basic_string& insert( size_type index, size_type count, CharT ch );
参见http://en.cppreference.com/w/cpp/string/basic_string/insert
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.