C++常用头文件——输入输出库

前言

在开发过程中常需要带各种头文件,但是作为初学者我们常存在困惑,要实现各类功能时我们需要带什么头文件呢,本文将对头文件的功能及用法进行详细介绍。

输入/输出库

iostream头文件

iostream包含了<ios>、<istream>、<ostream>、<streambuf>四个头文件,能够通过以下关键词实现对应功能:

对象功能
cin标准输入
cout标准输出
cerr标准错误
clog标准日志
wcin标准输入
wcout标准输入
wcerr标准错误
wclog标准日志

大家一定奇怪cin和wcin的区别,区别在于cin 表示“字符输入”而 wcin 表示“宽字符输入“。宽字符是用多个字节来代表的字符。
另一方面由于调用和功能均类似,cout、cerr和clog的区别也令人困惑。那么其区别在哪呢?cout的输出可以重定向到一个文件中,而cerr和clog必须输出在显示器上。而cerr和clog的区别在于cerr不经过缓冲区,而clog中的信息存放在缓冲区,缓冲区满或者遇到endl时才输出。cerr和clog存在的意义是为了在你最需要它的紧急情况下,还能得到输出功能的支持。所以并不是输出报错信息和运行日志,而是输出字符。
在程序中调用为:

#include <iostream>
using namespace std;
int main(){
 string TestName;
 cin>>TestName;
 cout<<TestName<<endl;
 clog<<TestName<<endl;
 cerr<<TestName<<endl;
 return 0;
} 

iomanip头文件

iomanip头文件是用以控制输入输出文本格式的辅助函数。能够通过关键词实现对应功能:

对象功能
resetiosflags重置的ios_base标志
setiosflags设置指定的ios_base标志
setbase更改用于整数I/O的基数
setfill更改填充字符
setprecision更改浮点精度
setw更改下个输入/输出域的宽度
#include <iostream>
#include <iomanip>
using namespace std;
int main(){
 // setioflags(ios::fixed) 固定的浮点显示
 // setioflags(ios::scientific) 指数表示
 // setiosflags(ios::left) 左对齐
 // setiosflags(ios::right) 右对齐
 // setiosflags(ios::skipws 忽略前导空白
 // setiosflags(ios::uppercase) 16进制数大写输出
 // setiosflags(ios::lowercase) 16进制小写输出
 // setiosflags(ios::showpoint) 强制显示小数点
 // setiosflags(ios::showpos) 强制显示符号 
 cout<<setbase(8)<<15<<endl;//  setbase(8)以八进制输出数字,同理setbase(10)、setbase(16)为以十进制、十六进制输出数字 
 cout<<'s'<<setw(8)<<'a'<<endl;//  setw(n) 设域宽为n个字符
 cout<<'s'<<setfill('*')<<setw(8)<<'a'<<endl;//  setw()默认填充的内容为空格,可以setfill()配合使用设置其他字符填充。
 cout<<setiosflags(ios::fixed)<<setprecision(3)<<1.2345<<endl;//  setprecision(n) 设显示小数精度为n位
 return 0;
} 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值