c++中cin.get的具体作用是什么?

voidmain(){charc;while((c=cin.get())!='?')cout<<--c;}程序运行时,如果从键盘输入:Y?N?<回车>,则输出结果为(X)... void main()
{
char c;
while((c=cin.get())!='?') cout<<--c;
}
程序运行时,如果从键盘输入:Y?N?<回车>,则输出结果为( X )。
展开
 我来答
累得像猪一样
推荐于2017-09-10 · TA获得超过4.6万个赞
知道大有可为答主
回答量:1.1万
采纳率:86%
帮助的人:849万
展开全部
c++中cin.get的具体作用是:
cin.get() 这个是从输入流中获取一个字符,所以下这句时,当程序运行到这里的时候,因为输入流中没有字符可以获取,需要输入一个字符,所以输入个回车程序就会结束。

#include <iostream>
#include <cstdio>

//输入ctrl+D来结束。

//cin.get会处理回车符,例如下面的例子中的0和2底下的空行,就是回车符引起的。

//输入示范:
/*

e
e当前count:0

当前count:1
t
t当前count:2

当前count:3
^D
4 characters read.

*/

int main(void)
{
using namespace std;

int ch;
int count = 0;

while ((ch = cin.get()) != EOF)
{
cout.put(char(ch));
cout<<"当前count:"<<count<<endl;
++ count;
}

cout<<endl<<count<<" characters read.\n";

return 0;
}
lab961022
2013-01-10 · TA获得超过150个赞
知道答主
回答量:47
采纳率:0%
帮助的人:49.4万
展开全部
cin.get()貌似是读入一个字符,并作为返回值,while((c=cin.get())!='?')所以因为这个语句的缘故,当你读到Y?N?中的第一个?时,退出while循环,在这之前读入了一个字符Y,并输出Y的ascii码减一所对应的字符,所以输出了一个 X
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式