C++ ToString()函数中的舍入浮点?
所以我有一个标签的表单,它应该显示浮点值,问题是我需要将这个数字四舍五入到小数点后2位,无论发生什么情况:C++ ToString()函数中的舍入浮点?,c++,c++-cli,C++,C++ Cli,所以我有一个标签的表单,它应该显示浮点值,问题是我需要将这个数字四舍五入到小数点后2位,无论发生什么情况: label1->Text = System::Convert::ToString( (float)((float)temperature/204.6) ); 我试着找了几个小时,但我发现没有直接对beast方程进行四舍五入的方法,而且据我所知,没有办法告诉ToString()将其四舍五入到2位小数 有没有简单的方法可以将结果四舍五入到ToString方法中的小数点后2位?你不能将结
label1->Text = System::Convert::ToString( (float)((float)temperature/204.6) );
我试着找了几个小时,但我发现没有直接对beast方程进行四舍五入的方法,而且据我所知,没有办法告诉ToString()将其四舍五入到2位小数
有没有简单的方法可以将结果四舍五入到ToString方法中的小数点后2位?你不能将结果乘以100,转换为int,然后用“转换为浮点”除以100吗?你不能将结果乘以100,转换为int,然后用“转换为浮点”除以100吗?这很简单:
String^ s = String::Format("{0:N2}", temperature/204.6);
这很简单:
String^ s = String::Format("{0:N2}", temperature/204.6);
在ToString方法中,有没有简单的方法将结果四舍五入到小数点后2位
不,不适用于std::tostring()
和要保留尾随零的情况。将std::ostringstream
与适当的
std::ostringstream oss;
开放源码软件
在ToString方法中,有没有简单的方法将结果四舍五入到小数点后2位
不,不适用于std::tostring()
和要保留尾随零的情况。将std::ostringstream
与适当的
std::ostringstream oss;
oss这里是与toFixed等价的JavaScript:
#include <iostream>
std::string ToFixed(double number, size_t digits)
{
char format[10];
char str[64];
sprintf_s(format, "%%0.%zdf", digits);
return std::string(str, sprintf_s(str, format, number));
}
int main()
{
std::cout << ToFixed((double)12345 / 204.6, 2) << std::endl;
return 0;
}
以下是与toFixed等效的JavaScript:
#include <iostream>
std::string ToFixed(double number, size_t digits)
{
char format[10];
char str[64];
sprintf_s(format, "%%0.%zdf", digits);
return std::string(str, sprintf_s(str, format, number));
}
int main()
{
std::cout << ToFixed((double)12345 / 204.6, 2) << std::endl;
return 0;
}
std::setprecision(2)
,Ithink@Neil是的,谢谢。std::setprecision(2)
,Ithink@Neil是的,谢谢。