c++浮点数转字符串怎么实现

avatar
作者
猴君
阅读量:0

在C++中,可以使用标准库函数std::to_string()将浮点数(如floatdouble)转换为字符串。这是一个简单的示例:

#include<iostream> #include<string>  int main() {     float num = 123.45f;     std::string str_num = std::to_string(num);     std::cout << "Float value: "<< num<< std::endl;     std::cout << "String value: "<< str_num<< std::endl;     return 0; } 

输出结果:

Float value: 123.45 String value: 123.45 

请注意,std::to_string()默认情况下会将浮点数转换为最短的有效表示形式。如果需要更多的控制,例如设置小数位数,可以使用std::ostringstreamstd::fixedstd::setprecision等操作符。这是一个更复杂的示例:

#include<iostream> #include <iomanip> #include <sstream> #include<string>  int main() {     double num = 123.456789;     std::ostringstream oss;     oss<< std::fixed<< std::setprecision(2)<< num;     std::string str_num = oss.str();     std::cout << "Double value: "<< num<< std::endl;     std::cout << "String value (rounded to 2 decimal places): "<< str_num<< std::endl;     return 0; } 

输出结果:

Double value: 123.456789 String value (rounded to 2 decimal places): 123.46 

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!