关于cin的一个问题,望解答

Aaron_Jerry 2009-07-26 08:25:03
环境windows vc6.0下

#include <iostream>
using namespace std;

int main(void)
{
string word;
while(cin>>word)
cout<<word<<endl;

return 0;
}

请问while(cin>>word) 输入什么结束,cin>>word具体返回什么东西?
...全文
112 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
Dave888Zhou 2009-07-26
  • 打赏
  • 举报
回复
“cin >> word”返回的是cin。cin是一个istream类的对象,重载的操作符>>一般是返回左操作数的。while()中需要的是一个bool值,这就说明cin对象肯定可以转换成bool值。实际上,istream类中一般会重载类型符operator bool,根据流的操作状态来确定返回true还是false,操作成功则返回true,操作失败则返回false。这样cin对象就可以隐式转换成一个bool值(true或false),你读入成功了,它就隐式转换成true,否则就转换成false。
xaz0202 2009-07-26
  • 打赏
  • 举报
回复
这是读入位置数目的string对象。 它是把输入操作作为判断条件。意思是,从标准输入读取一组string对象,然后在标准输出上逐行输出。
cl383804490 2009-07-26
  • 打赏
  • 举报
回复
是啊,返回的就是cin啊
BuleRiver 2009-07-26
  • 打赏
  • 举报
回复
cin返回的就是cin
adventurelw 2009-07-26
  • 打赏
  • 举报
回复
cin >> word返回的是cin
lwlchristy 2009-07-26
  • 打赏
  • 举报
回复
你用Ctrl+Z,我发现在我的电脑上要输两次Ctrl+Z,这样就可以退出循环!你看下C++ Primer上配套习题,上面有提示的!
rlink 2009-07-26
  • 打赏
  • 举报
回复
请问while(cin>>word) 输入什么结束,cin>>word具体返回什么东西?
输入string字符串,返回的也是string的字符串。你这写了个系死循环永不会有结束语句。
adventurelw 2009-07-26
  • 打赏
  • 举报
回复
在一行的开始输入Crtl + Z

或者增加判断条件
while((cin>>word) && (word != "quit"))
ZXW0521 2009-07-26
  • 打赏
  • 举报
回复
看这里,
http://topic.csdn.net/t/20040822/12/3298173.html
再看这里,
http://blog.sina.com.cn/s/blog_404dfe220100d80l.html

64,654

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧