cin

cin是标准输入流,从标准输入设备(键盘)获取数据。

只有在输入完数据后再按回车键,该行数据才能被送入键盘缓冲区,形成输入流,提取运算符>>才能从中提取数据

程序中的变量通过流提取符“>>”从流中提取数据。流提取符“>>”从流中提取数据时通常跳过输入流中的空格、tab键、换行符等空白字符

 

 

cin的终止

当遇到无效字符或遇到文件结束符(不是换行符,是文件中的数据已读完)时,输入流cin就处于出错状态,即无法正常提取数据

 

正常状态为true

出错状态为false

ctrl+z表示文件结束符。

常见用法

whie((cin>>grade)!=false)

{

//…….

}

 

get()和getline

 

特点

使用形式

用法

不带参数

ch=cin.get()

用来从指定的输入流中提取一个字符(包括空白字符),函数的返回值就是读入的字符。 若遇到输入流中的文件结束符,则函数值返回文件结束标志EOF(End Of File),一般以-1代表EOF,用-1而不用0或正值,是考虑到不与字符的ASCII代码混淆。

有一个参数的get函数

  cin.get(ch)

其作用是从输入流中读取一个字符,赋给字符变量ch。如果读取成功则函数返回true(真),如失败(遇文件结束符) 则函数返回false(假)。

 有3个参数的get函数

 cin.get(字符数组或字符指针, 字符个数n, 终止字符)

其作用是从输入流中读取n-1个字符,赋给指定的字符数组(或字符指针指向的数组),如果在读取n-1个字符之前遇到指定的终止字符,则提前结束读取。如果读取成功则函数返回true(真),如失败(遇文件结束符) 则函数返回false(假)。

 

 

 

 

getline函数的作用是从输入流中读取一行字符,其用法与带3个参数的get函数类似。即

cin.getline(字符数组(或字符指针), 字符个数n, 终止标志字符)

 

istream的成员函数:

eof()从输入流读取数据,如果到达文件末尾,那么返回false ,否则返回true

peek()用于观测下一个字符。其调用形式为c=cin.peek()

只是观测,指针不会向后移。如果观测到的是文件结束符,那么返回EOF(-1)

 

putback()作用是将,ch返回到输入流,插入到当前指针的位置,以供后面读取。

 

ignore()是跳过输入流中的的n个字符,或在指定的终止符时,提前结束

(提过终止符在内的若干个字符)

调用形式:

ignoreint n, char ch;

ignore()默认n=1, ch =EOF;

阅读更多
个人分类: C++
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

cin

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭