#include <iostream>
#include <stdlib.h>
int main()
{
int a = 5;
int b = 10;
std::cout.precision(4);
std::cout << (float)a/(float)b << "\n";
return 0;
}
显示0.5
?我希望看到0.5000
。是否因为原始整数数据类型?
我看到许多有关浮点数精度数的问题,但我特别想知道为什么这段代码#include
#include
#include <iostream>
#include <stdlib.h>
#include <iomanip>
int main()
{
int a = 5;
int b = 10;
std::cout << std::fixed;
std::cout << std::setprecision(4);
std::cout << (float)a/(float)b << "\n";
return 0;
}
您需要将std::fixed
操纵器传递给cout
才能显示尾随零。
std::cout.precision(4);
告诉要使用的最大位数