我正在尝试打印这样的双变量a
。
double a;
//some statements for a
LOG(INFO) << a;
如何a
使用全精度打印?
你应该试试
#include <iomanip> // std::setprecision
double a = 3.141592653589793238;
LOG(INFO) << std::fixed << std::setprecision( 15 ) << a;
如果这不起作用,您可以将其转换为std::string
并使用std::stringstream
#include <sstream> // std::stringstream
#include <iomanip> // std::setprecision
double a = 3.141592653589793238;
std::stringstream ss;
ss << std::fixed << std::setprecision( 15 ) << a;
LOG(INFO) << ss.str();
或者,如果您想要完全精确,您可以使用上述答案之一。
第一种方法很可能是最有效的方法。