C++ではstringstreamを文字列に変換するにはどうすればいいの?
C++では、std::stringstream クラスを使って、他のデータ型を文字列に変換できます。std::stringstream はストリームクラスであり、標準入力や出力ストリームと同様の方法で使えます。
以下に、その他のデータ型を文字列に変換する方法を示す例を示します。
#include <iostream>
#include <sstream>
int main() {
int number = 123;
std::stringstream ss;
std::string str;
// 将整数转换为字符串
ss << number;
str = ss.str();
std::cout << "整数转换为字符串: " << str << std::endl;
// 清空字符串流
ss.str("");
double pi = 3.14159;
// 将浮点数转换为字符串
ss << pi;
str = ss.str();
std::cout << "浮点数转换为字符串: " << str << std::endl;
return 0;
}
上記コードを実行すると、出力が表示されます。
整数转换为字符串: 123
浮点数转换为字符串: 3.14159
コード内では、まずstd::stringstreamオブジェクトssと文字列オブジェクトstrを作成します。次に<<演算子を使って整数と浮動小数点数をssに書き込み、それらを文字列に変換します。最後に、ss.str()メソッドを使ってssの中身を抽出し、strに代入します。
その他のデータ型(文字列、ブール値など)を文字列に変換するには、同様の方法を使用できます。