博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

C++输入输出

Posted on 2023-03-13 05:57  乔55  阅读(46)  评论(0编辑  收藏  举报

标准输入输出对象

  • cin为istream类型的对象,称为标准输入对象
  • cout为ostream类型的对象,称为标准输出对象
  • cerr通常用来输出警告和错误信息,称为标准错误
  • clog用来输出程序运行时的一般信息

C++输入输出

  • C++并未定义任何的输入输出语句,它用一个标准库来提供io机制
  • istream库包含基础类库istream和ostream,分别一脚输入流和输出流
    • 一个流就是一个字符序列,从IO读出或定入设备的
    • 流想表达的是,承着时间的推移,字符是顺序生成或消耗的

输入输出运算符

  • <<运算符:
    • 该运算符接受2个运算对象左侧的运算对象必须是一个ostream类型的对象
    • 右侧的运算对象是要打印的值
    • 将给定的值写到到ostream对象中去
    • 输出运算符的计算结果就是它左侧的运算对象
  • >>运算符:
    • 接受一个istream对象作其左侧运算对象,接受一个对象作其右侧运算对象
    • 它从给定的istream对象中读取数据,并存入给定的对象
    • 返回左侧对象作为其计算结果:cint>>a>>b;等价于:(cin>>a)>>b;
  • endl:这是一个称为操作符的特殊值
    • 写endl的效果就是结束当前行,并将与设备关联的缓冲区的内容刷到设备中去
    • 缓冲区刷新操作可保证目前为止程序所有输出都真正写入到输出流中,而不是仅存在内存中等待输入流

C++中的流

  • 在C++看来,数据的输出就是信息的流动,输出流就是程序空间到外设之间的信息流动的通道
  • 当需要向外设输送信息时,就需要先建立一个能够流通信息的通道,而向显示器输送信息的通道,是默认已经打开好了的
  • 负责向输出流输送数据的就是cout这个对象,cout输送数据的动作就是通过插入运算符来实现的
  • cout << "hello world" << endl;`,这个语句是什么含义
    • 这是一个流插入运算。<<是一个插入运算符
    • 意思是将这个字符串插入到输出流里去