setprecision的全部用法
时间: 2023-03-24 18:01:54 浏览: 521
setprecision()是C++ STL库中的一个函数,它可以设置浮点数的输出精度。具体用法如下:
首先需要包含头文件<sstream>和<iomanip>:
```cpp
#include <sstream>
#include <iomanip>
```
然后,可以使用setprecision()函数来设置输出精度,如下所示:
```cpp
double num = 3.1415926;
std::ostringstream ss;
ss << std::setprecision(4) << num;
std::string str = ss.str();
```
上述代码将数字3.1415926输出为字符串"3.142",因为setprecision(4)设置了输出精度为4位小数。
除了上述用法之外,setprecision()函数还可以与其他输出流操作符(如std::fixed、std::scientific)一起使用,以实现更灵活的输出控制。下面是一些常见的用法:
1. 设置固定小数位数输出:
```cpp
double num = 3.1415926;
std::cout << std::fixed << std::setprecision(4) << num << std::endl;
```
输出结果为:3.1416
2. 设置科学计数法输出:
```cpp
double num = 12345.6789;
std::cout << std::scientific << std::setprecision(2) << num << std::endl;
```
输出结果为:1.23e+04
3. 结合std::setw()控制输出宽度和填充字符:
```cpp
double num = 3.1415926;
std::cout << std::setw(10) << std::setfill('*') << std::setprecision(4) << num << std::endl;
```
输出结果为:"***3.142"
以上就是setprecision()函数的常见用法。