cin 和 cout 笔记一

管理流和缓冲区的各种类:
ios:是基于ios_base的类,有一些一般流属性,比如是否可以读取,二进制还是文本流,还有一个指向steambuf的指针
ostream:从ios中派生的提供输出方法
istream:从ios中派生的提供输入方法
iostream:从ostream和istream中派生的类,提供输出和输入的方法
streambuf:为缓冲区提供内存,并提供了用于填充缓冲区,访问缓冲区内容,刷新缓冲区和管理缓冲区内存的方法


iostream自动创建的八个流对象:
cin,wcin,
cout,wcout,
cerr,wcerr,
clog,wclog
其中带w的处理wchar_t

重定向:就是可以在操作系统上把cin之类的输出流或者输入流改变,比如屏幕改为文件


cout:
①关于cout<<,可以跟
unsigned char,
signed char,
char,
short,
unsigned short,
int,
unsigned int,
long,
unsigned long,
long long,
unsigned long long,
float,
double,
long double

②为下列指针类型定义了插入运算符的函数
const signed char*
const unsigned char*
const char*
void *

③同样,可以输出数组名或者数组起始地址指针来输出字符串

④关于输出拼接的原理
cout<<"we have"<<a<<"sda";
这个是 cout<<"we have"显示字符串返回cout,
然后为cout<<a<<"sda";
然后cout<<a显示a返回cout
然后cout<<"sda";就完了

⑤简单的说明
cout.put('W');cout.put('W').put('P')用于输出单个字符
cout.write(要显示字符串的指针,要显示多少个字符);
const char_type* ,streamsize
当然好像可以cout.put(shasha).write(shasha)<<dsad;也是这两个语句返回cout 的表现

⑥关于endl,这是一个刷新缓冲区和再插入一个换行符
flush(cout)可以强制立即刷新cout缓冲区当然cout<<flush

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值