C++输入输出

本文详细介绍了C++中的cin和cout对象,以及它们的特性和使用技巧,包括cin的输入处理,如忽略空白字符,如何处理EOF,以及cin.get()和cin.getline()的区别。同时,还探讨了C++中的字符串处理,数组与字符串的关系,以及命名空间的使用。最后,讨论了cin输入优化和不同读取方法对换行符的处理。
摘要由CSDN通过智能技术生成

一、cin概述

  • cin是C++中的一个对象,输入流对象
  • 用户在命令行输入的内容最终会发送到cin输入流中
  • cin会忽略掉输入中所有的space,enter,tab按键
  • 发送给cin的输入被缓冲,只有当用户按下enter键,输入的内容才会发送给程序
  • cin >> ch,ch只从cin中取第一个字符

二、文件结尾
1.文件结尾用EOF表示,在键盘中用Enter或者Ctrl+Z与Enter的组合
2.当cin检测到EOF时,会将eofbit和failbit都设置为1.

  • cin.eof()函数可以查看eofbit是否被设置,如果检测到EOF,则cin.eof()将返回bool值true,否则返回false。
  • cin.fail()函数,对于eofbit或failbit被设置为1,则函数返回true,否则返回false。

三、cin特性

  • cin.get(char)的返回值为cin,当cin出现在需要bool值得地方(如在while循环的测试条件中)时,该转换函数将被调用。如果最后一次读取成功,则转换得到的函数为true,否则为false。需要注意的是,如果cin读取成功,首先将值放入char中,然后程序获取函数调用的返回值,即cin。接下来,程序对cin进行bool转换,如果输入成功,则结果为true,否则为false.如果cin遇到EOF,则表示cin读取失败,并且不会将EOF放入char中,并返回false.
  • cin.get()函数,与c中的getchar()类似,返回输入中的下一个字符,将字符编码作为int值返回,当遇到EOF时,将没有可返回的字符,cin.get()返回一个用符号常量EOF表示的特殊值,在iostream中定义,EOF通常定义为-1,因为ASCII中没有字符对应的ASCII码为-1.需要注意的是EOF不表示输入中的字符,而是表示没有字符了。
  • 因为EOF不是有效字符,如果char没有类型,所以char不可能为EOF,所以接收cin.get()的变量应该为int类型,而不是char类型,存储字符的ASCII即可。

四、cout特性
1.cout与cin一样,是一个输出流
2.cout << char,注意cout会将char按照字符方式输出,如果需要输出char

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值