关于c++的问题,请指教!

来源:百度知道 编辑:UC知道 时间:2024/05/29 01:31:02
#include<iostream>
using namespace std;
void main()
{char letter;
while(!cin.eof())
{letter=cin.get();
letter=toupper(letter);
if(letter=='Y')
{cout<<"'Y' be met."<<endl;
break;}
cout<<letter;
}
}
帮忙分析一下这段程序!
为什么输入什么就输出什么(变成大写),输入y就停止?
cin.get()只能接受一个字符呀!
这可不是char *ch
ch="nihao";
这样的形式。
那为什么不输入一个字符就输出一个呢?
还需要按下回车?

letter=toupper(letter);
toupper()函数就是把字符letter转换成大写字母,不是则返回原值,

cin.get()是只能接受一个字符,但是它在while 循环里面,

letter=cin.get();
letter=toupper(letter);
if(letter=='Y')
{cout<<"'Y' be met."<<endl;
break;}
cout<<letter;

是在while循环里面,也只有在输入了y后才能才执行if(letter=='Y')
{cout<<"'Y' be met."<<endl;
break;
然后跳出循环.....
--------------------------------------
数据输入是以回车结束的,当然要按回车键了