免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1782 | 回复: 3
打印 上一主题 下一主题

[C++] 一个C++循环的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-01-11 16:02 |只看该作者 |倒序浏览
C++ primer 3d中文版,潘爱民译,p16有一个小程序,是关于读入未知个数的输入值的。今天中午没事编译了一下,结果出了一点问题。我是大一新手,大家给看看。
编译器:gcc4.0 / vs.net 2003
原程序如下:
#include<iostream>
#include<string>
using namespace std;
int main()
{
     string word;
     while(cin>>word)
               cout<<"word read is: "<<word<<'\n';
     cout<<"OK:no more words to read: bye!\n";
     return 0;
}
运行后,无法结束,我本来想输入一个空格就可以结束的,谁知道不行!
请教各位,在不改变程序的前提下,如何输入才可以结束程序?
还有,我本来以为应该是输入一个字符串,然后就输出一个。如果一下输入几个的话,就只输出第一个。谁知道我一下输入了好几个字符串,竟然都正确的输出了!
比如一次输入:asa etr ytr u6 454.这是怎么回事?c++做了什么手脚?

[ 本帖最后由 Tony_phoenix 于 2006-1-11 16:19 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2006-01-11 16:05 |只看该作者
看来只看书是不行的,还得多练习。一写程序就暴露很多问题。自己不会的还很多啊

论坛徽章:
0
3 [报告]
发表于 2006-01-11 18:26 |只看该作者
在WHILE循环里加个判断,写上你的结束条件,比如说空格跳出循环
你输入多个只显示一个的问题,涉及到行刷新的问题,而且你只输出一个字符,不是字符串

论坛徽章:
0
4 [报告]
发表于 2006-01-12 06:33 |只看该作者
^D结束输入流。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP