tempad
Readygo技术搜索引擎 >>网络技术 >> while(cin >> word) 问题 解决给分

while(cin >> word) 问题 解决给分

Readygo技术搜索引擎 网络搜索 efish 2008-1-17 16:28:06

while(cin >> word) 问题 解决给分

楼主mattrew(小耗子)2002-09-18 10:35:51 在 C/C++ / C语言 提问

vector<string>stingname;  
                  string   word  
                  while(cin   >>   word)  
  {  
                  stringname.push_back(word);  
  }  
  在C++   primer   书中   用到标准输入  
  可是cin   >>word 出现错误   
  我自己给改了word.c_str() 还是不成功  
  应该怎样改正呢?  
  问题点数:20、回复次数:11Top

1 楼mattrew(小耗子)回复于 2002-09-18 10:39:04 得分 0

我用scanf()可以   可使用操作符   cin   ???:(Top

2 楼Solstice(大佛)回复于 2002-09-18 10:56:35 得分 0

string   word   //这里少了一个分号!Top

3 楼innocentsweeper(水客)回复于 2002-09-18 11:03:57 得分 2

stingname  
  少了一个r   是   stringnameTop

4 楼chenqing1128(Alex)回复于 2002-09-18 11:05:12 得分 0

值得关注Top

5 楼jyc_nj(老蔣)回复于 2002-09-18 11:46:43 得分 0

我在VC6下试了正常,   如果没有你那些小问题的话.Top

6 楼mattrew(小耗子)回复于 2002-09-18 13:22:47 得分 0

while(cin   >>   word)  
  你这样的运行的   正常?  
  情说清楚些   “如果没有你那些小问题的话.”  
   
  Top

7 楼mydadou(mydadou)回复于 2002-09-18 14:09:17 得分 5

vector<string>stingname;  
                  string   word  
                  while(cin   >>   word)  
  {  
                  stringname.push_back(word);  
   
  }  
  这有错。  
  别这么写  
  vector<string>stingname;  
                  string   word;  
                  cin   >>   word  
                  while(!word.length())  
  {  
                        stringname.push_back(word);  
                        cin   >>   word  
  }  
   
  我也试过while(cin   >>x),可是好像vc++不支持这么写(所有的类型)  
   
  Top

8 楼jyc_nj(老蔣)回复于 2002-09-18 14:38:49 得分 5

vector<string>   stringname;  
                  string   word;  
  int   i=1;  
                  while(cin   >>   word)  
  {  
                  stringname.push_back(word);  
  if(   i++   >   2   )  
  break;  
  }  
   
  cout   <<   "You   pressed:   "   <<   endl;  
  vector<string>::iterator   iter;  
  for(iter   =   stringname.begin();   iter   !=   stringname.end();   iter++)  
  cout   <<   (*iter)   <<   endl;  
  我是这样写的,在VC6下可以.  
  我说的"没有那些小问题"是指,象少写个分号之类.  
   
  cin>>word;   调用operator   >>   (),   返回basic_istream   类型.  
  因为在while里,再调用operator!()   这个函数returns   fail().  
  也就是输入内容是否合法引起的错误.  
   
   
  Top

9 楼jyc_nj(老蔣)回复于 2002-09-18 14:49:50 得分 0

不行就加个括号  
  while((cin>>word))Top

10 楼johnmack(爱若琴弦)回复于 2002-09-18 18:36:17 得分 0

还是少分号吧!Top

11 楼fqcd555(Oo等待你oO)回复于 2002-09-18 22:52:03 得分 8

头文件有没有定义好.  
  有没有解决命名冲突.Top

责任编辑: efish 参与评论 查找更多:
相关文章
帮我看看数据库更新的问题,急!!!在线等~~ 帮我看看数据库更新的问题,急!!!在线等~~
flash的簡單問題﹐在線等候急急急急急急 flash的簡單問題﹐在線等候急急急急急急
CList链表的问题,请各位帮帮忙! CList链表的问题,请各位帮帮忙!
各位大哥 ,谁知道<<delphi 5开发人员指南>… 各位大哥 ,谁知道<<delphi 5开发人员指南>>的配套光盘在哪下载??
转贴:由C#风潮想起的-给初学编程者的忠告 转贴:由C#风潮想起的-给初学编程者的忠告
用window.open(),打开一个新窗口,如何让其大小与屏… 用window.open(),打开一个新窗口,如何让其大小与屏幕一般大小。不管它是多大分辨率的。
怎么destroy 掉所有create的line? 怎么destroy 掉所有create的line?
web service 抛出异常:基础连接已经关闭 怎么解决? web service 抛出异常:基础连接已经关闭 怎么解决?
最近想买个便宜的本本,威盛的芯怎么样? 最近想买个便宜的本本,威盛的芯怎么样?
intelliJ IDEA 2.6的汉字半角问题 intelliJ IDEA 2.6的汉字半角问题
2秒记住本站域名

玩过泡泡龙吗?Readygo?Go! 再加上.Com.Cn的后缀,那就是大名小顶的readygo.com.cn

分类导航
Readygo技术搜索引擎