使用string构造函数
构造函数 std::string(size_t n, char c);使用n个字符c初始化string对象。
char c = '1';
std::string s(1, c);
std::cout << s << std::endl;
使用stringstream
stringstream能够在string和其他数据类型之间进行转换。把待转换的字符插入stream,然后把其内容写入string。
char c = '1';
std::string s;
std::stringstream ss;
ss << c;
ss >> s;
// s = ss.str();
std::cout << s << std::endl;
使用string的push_back方法
push_back方法重载了对char的操作,把它附加到string的末尾。
char c = '1';
std::string s;
s.push_back(c);
std::cout << s << std::endl;
使用string的重载操作符+=
string& operator+= (char c);,如下:
char c = '1';
std::string s;
s += c;
std::cout << s << std::endl;
使用string的重载操作符=
string& operator= (char c);,如下:
char c = '1';
std::string s;
s = c;
std::cout << s << std::endl;
使用string的append方法
append方法把n个字符c放置在末尾:string& append (size_t n, char c);,如下:
char c = '1';
std::string s;
s.append(1, c);
std::cout << s << std::endl;
使用string的assign方法
assign方法使用n个字符c替换原来的值:string& assign (size_t n, char c);,如下:
char c = '1';
std::string s;
s.assign(1, c);
std::cout << s << std::endl;
使用string的insert方法
insert方法从位置pos开始插入n个字符c:string& insert (size_t pos, size_t n, char c);,如下:
char c = '1';
std::string s;
s.insert(0, 1, c);
std::cout << s << std::endl;
使用string的replace方法
replace方法使用n个字符c替换原string中pos开始的len个字符:string& replace (size_t pos, size_t len, size_t n, char c);,如下:
char c = '1';
std::string s;
s.replace(0, 1, 1, c);
std::cout << s << std::endl;
把字符转换为c-string,再转换为string
如下:
char c = '1';
const char *str = &c;
std::string s(str, 1);
std::cout << s << std::endl;
选择适用的方法即可,也算是复习了string的使用。
参考资料:
10 ways to convert a char to a string in c++