首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

求教 while(cin>>buf) value(buf)++; 怎样才能退出循环?该如何解决

2012-03-04 
求教 while(cinbuf) value(buf)++ 怎样才能退出循环?在TC++PL的第五章看到一个程序.执行的时候却怎么也

求教 while(cin>>buf) value(buf)++; 怎样才能退出循环?
在TC++PL的第五章看到一个程序.执行的时候却怎么也退不出while循环.请高手赐教.
#include   <iostream>
#include   <vector>
#include   <string>

using   namespace   std;

struct   Pair  
{
string   name;
double   val;
};

vector <Pair>   pairs;

double&   value(const   string   &   s)
{
for   (int   i=0;   i <pairs.size();   i++)
{
if   (s==pairs[i].name)
{
return   pairs[i].val;
}
}

Pair   p={s,0};

pairs.push_back(p);
return   pairs[pairs.size()-1].val;

}


int   main()
{
string   buf;

while(cin> > buf)   value(buf)++;

for   (vector <Pair> ::const_iterator   p=pairs.begin();   p!=pairs.end();   ++p)
{
cout < <p-> name < < ": " < <p-> val < < "\n ";
}
return   0;
}


[解决办法]
Linux,Unix下Ctrl+D
Windows下Ctrl+Z.
C++ Primer第一章就讲了.

热点排行
Bad Request.