C++初步认识 第一章

来源:互联网 发布:winzip mac 5 注册码 编辑:程序博客网 时间:2024/06/06 23:18
    刚开始学C++,试着总结。
C++初步认识 <wbr>第一章
以上是我自己敲的一个小例子。
   iosstream是由istream(输入类)和ostream(输出类)派生,所以在iostream中就有了输入和输出的相关对象。
其中,cin和cout呢,相当于C语言中的printf,scanf,输入和输出函数。
   cin,表示标准输入(standard input)的istream类对象,cin使我们可以从设备读取数据。
   cout,表示标准输出(standard output)的ostream类对象,cout使我们可以向设备输出或者写数据。
其中呢,cin.get()是一个读取单个字符的方法。就是说你输入一串字符,取得的只是一个单个字符。

   程序的输入都建有一个缓冲区,即输入缓冲区。一次输入过程是这样的,当一次键盘输入结束时会将输入的数据存入输入缓冲区,而cin函数直接从输入缓冲区中取数据。正因为cin函数是直接从缓冲区取数据的,所以有时候当缓冲区中有残留数据时,cin函数会直接取得这些残留数据而不会请求键盘输入。
endl为回车,换行。原以为它跟\n的功能是一样的,但后来在网上看了看,还是有区别的;

endl是一个特殊值,称为操纵符,将它写入输出流时,不仅具有输出换行的效果,而且它刷新与设备关联的缓冲区,通过刷新缓冲区,用户可立即看到写入到流中的输出。

\n仅仅是一个换行符,将它写入到输出流时,只能起到一个换行的作用,不能刷新输出。

因此建议,在能用cout<<endl;的形式时不要用cout<<'\n';形式。

程序员经常在调试过程中插入输出语句,这些语句都应该刷新输出流。忘记刷新输出流可能会造成输出信息停留在缓冲区,如果程序崩溃,将会导致对程序崩溃位置的错误判断。
endl = \n + flush






0 0
原创粉丝点击