我是靠谱客的博主 传统大船,最近开发中收集的这篇文章主要介绍C++中的格式化输出,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

部分转载自:
https://www.cnblogs.com/single-dont/p/10479514.html https://blog.csdn.net/beashaper_/article/details/79372420

在C++中,我们常用到的一些关于流操纵算子,来对我们程序中的输出结果进行格式化的输出。

操作符含义输入输出
dec以十进制显示(默认设置)I/O
hex以十六进制显示I/O
oct以八进制显示I/O
Setbase(int n)设置数制基数为n(=0,8,10,16),0表示默认(十进制)
ws提取空白字符I
ends插入空字符O
endl插入换行符,然后刷新ostream缓冲区O
flushostream缓冲区O
resetiosflags(long)清除参数所指定的标志位
setiosflags(long)设置参数所指定的标志位
setfill(char)设置填充字符O
setprecision(int)设置浮点数输出的有效数字位数O
setw(int)设置输出数据项的域宽O

流操纵算子作  用
*dec以十进制形式输出整数常用
hex以十六进制形式输出整数
oct以八进制形式输出整数
fixed以普通小数形式输出浮点数
scientific以科学计数法形式输出浮点数
left左对齐,即在宽度不足时将填充字符添加到右边
*right右对齐,即在宽度不足时将填充字符添加到左边
setbase(b)设置输出整数时的进制,b=8、10 或 16
setw(w)指定输出宽度为 w 个字符,或输人字符串时读入 w 个字符
setfill(c)在指定输出宽度的情况下,输出的宽度不足时用字符 c 填充(默认情况是用空格填充)
setprecision(n) 设置输出浮点数的精度为 n。

在使用非 fixed 且非 scientific 方式输出的情况下,n 即为有效数字最多的位数,如果有效数字位数超过 n,则小数部分四舍五人,或自动变为科学计 数法输出并保留一共 n 位有效数字.

在使用 fixed 方式和 scientific 方式输出的情况下,n 是小数点后面应保留的位数
setiosflags (标志) 将某个输出格式标志置为 1


resetiosflags(标志) 将某个输出格式标志置为 0

测试代码如下:

#include <iostream>
#include <iomanip>

using namespace std;
/*
	C++中的格式化输出:控制小数点、十六进制、八进制、二进制.......
 */

int main(int argc, char const *argv[])
{
	cout<<"C++中的格式化输出"<<endl;
	double a = 12.23467;
	//保留指定位小数
	cout << "double a = " << a << endl;
	cout << "保留3位有效小数: " << fixed << setprecision(3) << a << endl;
	cout << "保留4位有效小数: " << fixed << setprecision(4) << a << endl;
	cout << "保留5位有效小数: " << fixed << setprecision(5) << a << endl;

	int n = 104;
	//指定进制
	cout << "int n = " << n << endl;
	cout << "十六进制: " << hex << n << endl;
	cout << "十进制: " << dec << n << endl;
	cout << "八进制: " << oct << n << endl;

	return 0;
}

输出结果如图所示:
输出结果如图所示

最后

以上就是传统大船为你收集整理的C++中的格式化输出的全部内容,希望文章能够帮你解决C++中的格式化输出所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(38)

评论列表共有 0 条评论

立即
投稿
返回
顶部