C++ Primer 5th笔记(chap 17 标准库特殊设施)输出补白

Posted thefist11

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++ Primer 5th笔记(chap 17 标准库特殊设施)输出补白相关的知识,希望对你有一定的参考价值。

1. 控制数据格式

定义在iomapip中的操作符

操作符 描述
setfill(ch) 用ch填充空白
setprecision(ch) 将浮点精度设置为n
setw(ch) 读或写值的宽度为w个字符
setbase(ch) 将整数输出被b进制

1.1 setw

setw 指定下一个数字或字符串值的最小空间。
• left 表示左对齐输出。
• right 表示右对齐输出, 右对齐是默认格式。
• internal 控制负数的符号的位置, 它左对齐符号, 右对齐值, 用空格填满所有中 <7591
间空间。
• setfill 允许指定一个字符代替默认的空格来补白输出

eg.

int i = -16;
double d = 3.14159;

cout << "i: " <<setw (12) «i<<"next col" «' \\n'
<< "d: ’’ << setw (12) << d << "next col" << ’\\n’;

// 补白第一列, 左对齐所有列
cout << left <<"i: " << setw (12) << i << "next col" << ’\\n’  << "d: " << setw (12) << d << "next col" << ’\\n’
<< right; // 恢复正常对齐

// 补白第一列 , 右对齐所有列
cout << right << "i: " << setw (12) << i <<"next col" <<’\\n’<<"d: " << setw (12) << d << "next col" <<’\\n’;

// 补白第一列, 但补在域的内部
cout <<internal << "i:" << setw (12)<< i << "next col" <<’\\n’
<< "d: " << setw (12) << d << "next col" <<’\\n’;

// 补白第一列, 用#作为补白字符
cout << setfill(#)
<<"i: " <<setw (12) << i << "next col" <<r\\nr
<<"d: " <<setw (12) << d <<"next col" <<r \\nf
<<setfill(' ') // 恢 复 正 常 的 补 白 字 符

eg.

#include <iomanip>

    int i = -16;
	double d = 3.1415926;
    // 补白第一列, 使用输出中最小 12 个位置
    // 补白第一列, 左对齐所有列
	cout << left
		<<"i: " << setw(12) << i <<"    next col" << '\\n'
		<<"d: " << setw(12) << d<< "    next col" <<
		endl;

     // 补白第一列 , 右对齐所有列
	cout << right
		<< "i: " << setw(12) << i << "    next col" << '\\n'
		<< "d: " << setw(12) << d << "    next col" <<
		endl;

     // 补白第一列, 但补在域的内部
	cout << internal
		<< "i: " << setw(12) << i << "    next col" << '\\n'
		<< "d: " << setw(12) << d << "    next col" <<
		endl;

    // 补白第一列, 用#作为补白字符
	cout << setfill('#')
		<< "i: " << setw(12) << i << "    next col" << '\\n'
		<< "d: " << setw(12) << d << "    next col" <<
		endl;
 
	cout« setfill(' '); // 恢 复 正 常 的 补 白 字 符







 

以上是关于C++ Primer 5th笔记(chap 17 标准库特殊设施)输出补白的主要内容,如果未能解决你的问题,请参考以下文章

C++ Primer 5th笔记(chap 17 标准库特殊设施)输出补白

C++ Primer 5th笔记(chap 17 标准库特殊设施)bitset类型

C++ Primer 5th笔记(chap 17 标准库特殊设施)正则表达式

C++ Primer 5th笔记(chap 17 标准库特殊设施)tuple 返回多个值

C++ Primer 5th笔记(chap 17 标准库特殊设施)控制输入格式

C++ Primer 5th笔记(chap 17 标准库特殊设施)bitset操作