c++基础教学 1.基础入门篇(2)

本文介绍了C++中iostream库与stdio.h头文件的使用区别,重点解析了输入流cin和输出流cout的工作原理。iostream包含了标准输入输出对象,cin用于窄字符的标准输入,cout用于输出。cin会忽略空格、tab或换行符,通过cin.fail()和cin.eof()可检查读取状态。文章还预告了后续将分享更多高级编程内容。
摘要由CSDN通过智能技术生成

今天,我们继续针对以下连个代码进行讲解:

想看第一章请点击以下网址:

https://blog.csdn.net/ljn081117/article/details/120584999

#include<iostream>
using namespace std;
 
int main()
{
    cout<<"Hello,c++";
    return 0;
}
#include<stdio.h>
uisng namespace std;
 
int main()
{
    printf("Hello,c++");
    return 0;
}

        可以看出,两个代码除了头文件不一样外,还有一个点也不一样,那就是主代码里的coutprintf,我们就先讲cout吧。

        提到cout,我就不得不提一下他的“兄弟”——cin。

<iostream> 是 Input Output Stream 的缩写,是标准的输入、输出流库。定义了标准的输入、输出对象。including <iostream> 还会自动包含<ios>,<streambuf>,<istream>,<ostream>和<iosfwd>。

  Note: iostream 类主要声明在头文件 <istream>中。

   输入流: std::cin 是 istream 类的对象,它主要面向窄字符(narrow characters (of type char))的标准输入流。

   输出流: std::cout 是 ostream 类的对象,它主要面向窄字符的标准输出流。

   在理解 cin 功能时,不得不提标准输入缓冲区。当我们从键盘输入数据的时候,需要敲一下回车键才能够将这个数据 送入到缓冲区 中,那么敲入的这个回车键(\r)会被转换为一个换行符’\n’,这个换行符也会被存储在 cin 的缓冲区中并且被当成一个字符来计算!
   比如我们在键盘上敲下了 123456 这个字符串,然后敲一下回车键(\r)将这个字符串送入了缓冲区中,那么此时缓冲区中的字节个数是 7 ,而不是 6。
   cin 读取数据也是从缓冲区中获取数据,缓冲区为空时,cin 的成员函数会阻塞等待数据的到来,一旦缓冲区中有数据,就触发 cin 的成员函数去读取数据。

I. std::cin 可以连续从键盘读取想要的数据,并忽略空格、tab 或 换行符。
II. 可通过函数 cin.fail() 判断 cin 是否成功从缓冲区读取数据,若刚进行的操作失败,则返回真,否则返回假。
III. 可通过函数 cin.eof() 判断 是否检测到文件尾,linux可通过Ctrl+D(window可用Ctrl+Z)模拟文件尾,当检测到 EOF后,cin.eof( )返回true。cout跟其也是一样的运行方式。

cout可以说是一种输出东西的方式,当然,还有更多的输出,后续会说。

从下周起,我还会时不时更新题解之类难度偏高文章,希望大家给我点一个关注,谢谢。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值