将浮点数四舍五入到小数点后一位,然后转换为字符串
Rounding a float to one decimal place then convert to a string
我有这个:
#include <iostream>
#include <iomanip>
std::string ExampleInstance::RoundNumber(float result) {
std::string RoundResult;
std::cout << std::fixed << std::showpoint;
std::cout << std::setprecision(1);
std::cout << result << std::endl;
RoundResult = std::to_string(result);
return RoundResult;
}
我想向这个方法传递一个浮点数,将它四舍五入到小数点后一位,将其转换为字符串,然后 return。目前这对数字没有任何作用。
setPrecision
会更有效吗?我是 C++ 新手。
您可以使用 ostringstream 来达到这个目的。不要忘记包括 <sstream>
。
代码片段:
string RoundNumber(float result)
{
std::ostringstream out;
out<<std::setprecision(1)<<std::fixed<<std::showpoint<< result;
std::string RoundResult = out.str();
return RoundResult;
}
我有这个:
#include <iostream>
#include <iomanip>
std::string ExampleInstance::RoundNumber(float result) {
std::string RoundResult;
std::cout << std::fixed << std::showpoint;
std::cout << std::setprecision(1);
std::cout << result << std::endl;
RoundResult = std::to_string(result);
return RoundResult;
}
我想向这个方法传递一个浮点数,将它四舍五入到小数点后一位,将其转换为字符串,然后 return。目前这对数字没有任何作用。
setPrecision
会更有效吗?我是 C++ 新手。
您可以使用 ostringstream 来达到这个目的。不要忘记包括 <sstream>
。
代码片段:
string RoundNumber(float result)
{
std::ostringstream out;
out<<std::setprecision(1)<<std::fixed<<std::showpoint<< result;
std::string RoundResult = out.str();
return RoundResult;
}