在c++中使用格式的sprintf

sprintf with format in C++

本文关键字:格式 sprintf c++      更新时间:2023-10-16

我正在学习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获得相同的输出?

你想使用输入/输出操纵符:

#include <iomanip>
// ...
std::ostringstream out;  
out << "B" << std::fixed << std::setw(7) << std::setprecision(2) << searchEquinox;