C++中的setprecision: fixed: scientific等函数

简介: C++中的setprecision: fixed: scientific等函数

在C++中,setprecision, fixed, scientific, hex, oct, 和 dec 是用于格式化输出的控制符,它们都是 <iomanip> 头文件中的一部分。

setprecision

setprecision(int n) 用于设置浮点数的输出精度,即小数点后保留的位数。如果与 fixedscientific 一起使用,它将决定小数点后或指数表示法中小数的位数。

示例:

#include <iostream>
#include <iomanip>
usingnamespace std;
int main() {
    double number = 3.14159265;
    cout << setprecision(3) << number << endl; 
// 输出: 3.142
   cout <<fixed << setprecision(3) << number << endl;
 // 输出: 3.142 (固定小数点)
    cout << scientific <<setprecision(3) << number << endl; 
// 输出: 3.142e+00 (科学记数法)
    return 0;
}

fixed

fixed 操作符用于设置浮点数以固定小数点的形式输出,即总是显示指定位数的小数,而不管其实际值大小。

示例:

#include <iostream>
#include <iomanip>
using namespace std;
int main() {
    double pi = 3.1415926535;
    cout <<fixed << setprecision(2) << pi << endl; // 输出: 3.14
    return 0;
}

scientific

scientific 操作符使得浮点数以科学记数法形式输出,即一个1到10之间的数字乘以10的某个幂。

示例:

#include <iostream>
#include <iomanip>
int main() {
    double e = 2.718281828459;
    std::cout << std::scientific << std::setprecision(3) << e << std::endl; 
// 输出: 2.718e+00
    return 0;
}

hex, oct, dec

这些操作符用于改变整数的输出基数。

  • hex 将整数以十六进制形式输出,其中A-F表示10-15。
  • oct 将整数以八进制形式输出。
  • dec 将整数以十进制形式输出,这是默认设置。

示例:

#include <iostream>
#include <iomanip>
using namespace std;
int main() {
    int value = 255;
    cout << dec << value <<endl; // 输出: 255 (十进制)
    cout << hex << value << endl; // 输出: ff (十六进制)
    cout <<oct << value << endl; // 输出: 377 (八进制)
    return 0;
}

记得在进行格式设置后,使用 std::resetiosflags 或重新设置新的格式来清除之前的效果,以避免意外的格式继承。

目录
相关文章
|
1天前
|
C++
C++ string中的函数和常用用法
C++ 中string中的函数和常用用法
10 4
|
17天前
|
存储 C++
【C++】string类的使用③(非成员函数重载Non-member function overloads)
这篇文章探讨了C++中`std::string`的`replace`和`swap`函数以及非成员函数重载。`replace`提供了多种方式替换字符串中的部分内容,包括使用字符串、子串、字符、字符数组和填充字符。`swap`函数用于交换两个`string`对象的内容,成员函数版本效率更高。非成员函数重载包括`operator+`实现字符串连接,关系运算符(如`==`, `&lt;`等)用于比较字符串,以及`swap`非成员函数。此外,还介绍了`getline`函数,用于按指定分隔符从输入流中读取字符串。文章强调了非成员函数在特定情况下的作用,并给出了多个示例代码。
|
1月前
|
C++ 容器
【C++】拷贝构造函数、拷贝赋值函数与析构函数
【C++】拷贝构造函数、拷贝赋值函数与析构函数
71 6
|
26天前
|
编译器 程序员 语音技术
C++的超20种函数类型分享
C++超20种函数类型:编程语言规定规则,编译器实现预定规则
|
27天前
|
C++
C++函数的返回数据写法的思路
C++函数使用尾置返回类型、decltype、类型别名返回一个数组引用
|
28天前
|
关系型数据库 MySQL 测试技术
技术分享:深入C++时间操作函数的应用与实践
技术分享:深入C++时间操作函数的应用与实践
23 1
|
1月前
|
安全 C++ 开发者
C++一分钟之-函数参数传递:值传递与引用传递
【6月更文挑战第19天】C++中函数参数传递涉及值传递和引用传递。值传递传递实参副本,安全但可能效率低,适合不变对象;引用传递传递实参引用,允许修改,用于高效修改或返回多值。值传递示例显示交换不生效,而引用传递示例实现交换。常量引用则防止意外修改。选择传递方式需考虑效率与安全性。
28 2
|
17天前
|
算法 C++ 容器
|
17天前
|
存储 编译器 程序员