21xrx.com
2024-12-22 23:38:55 Sunday
登录
文章检索 我的文章 写文章
C++ 如何将 float 转为 string 并保留两位小数?
2023-07-05 08:56:26 深夜i     --     --
C++ float string 保留两位小数

在C++中,将 float 转为 string 并保留两位小数可以使用以下两种方法。

方法一:使用 stringstream 类

stringstream 是一个可以读写字节流的类,可以将 float 转为 string。首先,需要包含头文件 ,然后使用 stringstream 对象将 float 转为 string,最后使用 std::setprecision(2)函数设置小数位数为两位。

示例代码如下:


#include <iostream>

#include <sstream>

int main() {

  float f = 3.1415926;

  std::stringstream ss;

  ss << std::fixed << std::setprecision(2) << f;

  std::string s = ss.str();

  std::cout << s << std::endl; // 输出 3.14

  return 0;

}

方法二:使用 sprintf 函数

sprintf 函数可以将 float 格式化为 char*,然后可以将 char* 转为 string。同样需要使用 std::setprecision(2)设置小数位数。

示例代码如下:


#include <iostream>

#include <cstdio>

int main() {

  float f = 3.1415926;

  char buffer[30];

  sprintf(buffer, "%.2f", f);

  std::string s(buffer);

  std::cout << s << std::endl; // 输出 3.14

  return 0;

}

这两种方法都可以将 float 转为 string 并保留两位小数,选择哪个方法取决于个人喜好和代码需求。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复