我想替换以下实现:
float value = 3.14;
printf("%g", value);
Run Code Online (Sandbox Code Playgroud)
(有关说明,请参见%g在printf中的%g工作方式)。
但是我还没有在流操纵器中找到同等的操纵器,仅对固定操纵器或科学操纵器而言,而并非两者中最短的操纵器(https://en.cppreference.com/w/cpp/io/manip/fixed)。这是否存在或是否存在“简单”的实现方式?
链接的SO问题中的一些示例:
%.6g使用544666.678,则写为544667 ,%.5g。%g是默认行为。例如:
#include <iomanip>
#include <iostream>
int main()
{
std::cout << std::setprecision(6) << 544666.678 << "\n"
<< std::setprecision(5) << 544666.678 << "\n";
}
Run Code Online (Sandbox Code Playgroud)
输出:
544667
5.4467e+05
Run Code Online (Sandbox Code Playgroud)
设置或std::defaultfloat后,可以使用机械手保留默认行为。std::fixedstd::scientific
| 归档时间: |
|
| 查看次数: |
160 次 |
| 最近记录: |