我在编写C ++时学习C ++,现在我有疑问: 我有这段代码:
std::string cstr;
double searchEquinox;
sprintf(cstr, "B%7.2f", searchEquinox);
在互联网上阅读我发现我必须使用std::ostringstream
,但我的问题是我不知道如何翻译' B%7.2f
使用std::ostringstream
。
std::ostringstream out;
out << searchEquinox;
cstr = out.str();
我需要做什么才能使用std::ostringstream
获得相同的输出?
答案 0 :(得分:2)
您想使用input/output manipulators:
#include <iomanip>
// ...
std::ostringstream out;
out << "B" << std::fixed << std::setw(7) << std::setprecision(2) << searchEquinox;