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();