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 或重新设置新的格式来清除之前的效果,以避免意外的格式继承。

目录
相关文章
|
2月前
|
程序员 C++ 容器
在 C++中,realloc 函数返回 NULL 时,需要手动释放原来的内存吗?
在 C++ 中,当 realloc 函数返回 NULL 时,表示内存重新分配失败,但原内存块仍然有效,因此需要手动释放原来的内存,以避免内存泄漏。
|
2月前
|
存储 前端开发 C++
C++ 多线程之带返回值的线程处理函数
这篇文章介绍了在C++中使用`async`函数、`packaged_task`和`promise`三种方法来创建带返回值的线程处理函数。
83 6
|
2月前
|
C++
C++ 多线程之线程管理函数
这篇文章介绍了C++中多线程编程的几个关键函数,包括获取线程ID的`get_id()`,延时函数`sleep_for()`,线程让步函数`yield()`,以及阻塞线程直到指定时间的`sleep_until()`。
45 0
|
2月前
|
编译器 C语言 C++
C++入门3——类与对象2-2(类的6个默认成员函数)
C++入门3——类与对象2-2(类的6个默认成员函数)
39 3
|
2月前
|
编译器 C语言 C++
详解C/C++动态内存函数(malloc、free、calloc、realloc)
详解C/C++动态内存函数(malloc、free、calloc、realloc)
392 1
|
2月前
|
存储 编译器 C++
C++入门3——类与对象2-1(类的6个默认成员函数)
C++入门3——类与对象2-1(类的6个默认成员函数)
51 1
|
2月前
|
安全 编译器 C++
【C++篇】C++类与对象深度解析(三):类的默认成员函数详解
【C++篇】C++类与对象深度解析(三):类的默认成员函数详解
26 3
|
2月前
|
编译器 C语言 C++
C++入门6——模板(泛型编程、函数模板、类模板)
C++入门6——模板(泛型编程、函数模板、类模板)
70 0
C++入门6——模板(泛型编程、函数模板、类模板)
|
2月前
|
存储 编译器 C++
【C++】掌握C++类的六个默认成员函数:实现高效内存管理与对象操作(二)
【C++】掌握C++类的六个默认成员函数:实现高效内存管理与对象操作
|
3月前
|
编译器 C++
【C++核心】函数的应用和提高详解
这篇文章详细讲解了C++函数的定义、调用、值传递、常见样式、声明、分文件编写以及函数提高的内容,包括函数默认参数、占位参数、重载等高级用法。
31 3