C++ 将字符和int组合为字符串
比如,C++ 将字符和int组合为字符串,c++,C++,比如, int i = 1; char c = 'V'; string s; 结果: s = "1 V" 有人能告诉我怎么做吗? 谢谢使用头文件中的std::stringstream,如下所示: #include <sstream> int i = 1; char c = 'V'; std::stringstream ss; ss << i << " " << c; std::string s = ss.str(); std::cout &
int i = 1;
char c = 'V';
string s;
结果:
s = "1 V"
有人能告诉我怎么做吗?
谢谢使用
头文件中的std::stringstream
,如下所示:
#include <sstream>
int i = 1;
char c = 'V';
std::stringstream ss;
ss << i << " " << c;
std::string s = ss.str();
std::cout << s;
我已经实现了
stringbuilder
,使用它,您只需一行就可以做到这一点:
std::string s = stringbuilder() << i << " " << c;
stringstream;
strFYI它被称为词法转换,后面是连接。谢谢Nawaz,如果我使用streamstring,下次我想再次使用它时,如何清除它?我试过ss.flush()和ss.clear(),但没有work@user552279:按照@ildjarn的建议,执行ss.str(“”
以使ss
为空。
std::string s = stringbuilder() << i << " " << c;
struct stringbuilder
{
std::stringstream ss;
template<typename T>
stringbuilder & operator << (const T &data)
{
ss << data;
return *this;
}
operator std::string() { return ss.str(); }
};
stringstream str;
str<<< i << c;
string s=str.str();