C++拼接String字符串 #include <iostream>#include <string>#include <sstream>using namespace std;int main(){ testFirst(); testSecond(); testThr(); return 0;}/** * 第一种C风格的转化 * * sprintf 功能强大 */void testFirst(){ char *s = "hello"; int a = 52; float b = .1314; char *buf = new char[strlen(s) + sizeof(a) + 1]; sprintf(buf, "%s%d%.4f", s, a, b); printf("%s\n", buf);}/** * 半C半C++风格 */void testSecond(){ string s = "dong"; int a = 520; //2147483647 int最大值 char *buf = new char[10]; //itoa虽然可以转化为各种进制,但是注意不能是float或者double _itoa(a, buf, 10); s += buf; cout << s << "\t"; _itoa(a, buf, 16); s += buf; cout << s << endl;}/** * 纯C++风格 */void testThr(){ string s = "中国"; int a = 520; double b = .1314; ostringstream oss; oss << s << a << b << endl; cout << oss.str() << endl;}/* * 输出结果 hello520.1314hello520 dong520208中国5200.1314*/