posts - 9,comments - 21,trackbacks - 0

书上有个例子,只允许用户输入数字,这个例子是用来计算高尔夫球结果的。把其中的核心提出来:

 1 #include  < iostream >
 2
 3 using   namespace  std;
 4
 5 int  main()
 6 {
 7      int  i;
 8     
 9     cout  <<   " 请输入: " ;
10      while  ( ! (cin  >>  i))
11      {
12               cin.clear();
13                while  (cin. get ()  !=   ' \n ' )
14                      continue ;
15               cout  <<   " 输入错误,请输入一个数字: " ;
16     }

17     
18     cout  <<   " 你输入的是: "   <<  i  <<  endl; 
19     
20     system( " PAUSE " );
21     
22      return   0 ;
23 }

24

当输入:a时,提示输入错误;当输入5a时,显示出5.这与我想象中(或者说,其它语言中的isnumeric函数)有一丝出入
原因应该出自cin,该如何解决????

posted on 2006-04-12 15:44 蕃豆仁 阅读(447) 评论(0)  编辑 收藏 引用 所属分类: C++ primer plus读书笔记

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理