青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

隨筆-145  評論-173  文章-70  trackbacks-0

考慮如下代碼:

 

#include <iostream>
using namespace std;

int main()
{
  
int a;
  
while(cout<<"input a integer (1- 10) :",cin>>a,! (a>=1 && a<=10))
   cout
<<"try again!"<<endl;
return 0;
}




本意是讓用戶選擇一個1-10的數,如果不是1-10的數則重新輸入。

分析:

如果用戶輸入了一個不在1-10的 int,那么,程序會正確的執行,并且提示用戶重新輸入。

但是如果用戶錯誤的輸入了一個字符char,那么,后果就是一直執行while循環!

錯誤分析:

當cin嘗試將輸入的字符讀為int型數據失敗后,會產生一個錯誤狀態--cin.fail().而要用cin讀取輸入流中的數據,輸入流必須處于無錯誤狀態。因此,由于錯誤狀態的存在,會一直執行while循環。

錯誤修正:

#include <iostream>
using namespace std;

int main()
{
int a;
while(cout<<"input a integer (1-10) :",cin>>a,! (a>=1 && a<=10) || cin.fail())
{
   cout<<"try again!"<<endl;
   cin.clear(); //清除std::cin的錯誤狀態
   cin.sync(); //清空輸入緩沖區
}
return 0;
}

加上判斷輸入是否成功的cin.fail()以及修正錯誤輸入的cin.clear()和cin.sync();

其中std::cin.sync();這一句必不可少,因為所有從標準輸入設備輸入的數據都是先保存在緩沖區中,然后istream對象再從緩沖區中進行提取。如果不清空緩存,下次在讀取數據的時候又會再次產生錯誤,也會陷入死循環。





posted on 2010-03-27 21:59 deercoder 閱讀(1700) 評論(0)  編輯 收藏 引用 所屬分類: C/C++

評論:
# re: cin讀取失敗后進入死循環?-------剖析輸入流的條件 2011-04-29 10:07 | designer handbags
呵呵  回復  更多評論
  
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            国产日韩一区二区三区在线| 亚洲在线一区| 六月天综合网| 亚洲国产精品福利| 亚洲电影在线| 欧美理论电影在线观看| 亚洲一区二区三区免费在线观看| 日韩亚洲在线观看| 国产日韩欧美综合在线| 麻豆成人综合网| 欧美日韩视频在线一区二区| 香港成人在线视频| 久久久久久国产精品mv| 亚洲蜜桃精久久久久久久| 亚洲伊人久久综合| 在线成人性视频| 正在播放亚洲一区| 亚洲国产成人不卡| 一区二区欧美日韩视频| 国语精品一区| 亚洲视频电影图片偷拍一区| 在线电影一区| 亚洲一区二区三区色| 在线免费观看日本欧美| 99在线视频精品| 亚洲电影激情视频网站| 一本色道久久综合亚洲精品按摩| 国产亚洲毛片在线| 这里只有精品在线播放| 亚洲精品国产精品久久清纯直播| 亚洲综合视频1区| 日韩天天综合| 久久综合色播五月| 久久国产视频网站| 欧美视频在线观看视频极品| 欧美成人精品一区二区| 国产日韩欧美91| 99精品欧美| 亚洲精品久久久久久久久| 香蕉精品999视频一区二区| 亚洲精品日韩激情在线电影 | 亚洲欧美日本伦理| 免费亚洲视频| 久久夜色精品亚洲噜噜国产mv| 欧美午夜精品久久久久久久| 亚洲国产精品久久久久婷婷884| 国产真实乱偷精品视频免| 亚洲一区二区在线观看视频| 在线视频亚洲欧美| 欧美激情免费在线| 亚洲国产三级网| 亚洲另类黄色| 欧美激情精品久久久久久| 亚洲高清资源| 亚洲美洲欧洲综合国产一区| 欧美国产精品专区| 亚洲国产日韩一区二区| 日韩亚洲国产欧美| 欧美激情按摩在线| 亚洲人成在线播放网站岛国| 亚洲人成在线播放| 欧美女同在线视频| 99re6热在线精品视频播放速度 | 久热这里只精品99re8久| 欧美日韩在线三区| 99综合视频| 亚洲男人第一网站| 欧美性片在线观看| 午夜日韩av| 可以看av的网站久久看| 永久555www成人免费| 另类专区欧美制服同性| 亚洲福利在线看| 在线综合视频| 国产欧美一区二区三区久久 | 久久久999精品免费| 欧美1区2区视频| 日韩视频不卡中文| 国产精品久久久久影院色老大 | 亚洲电影在线免费观看| 日韩亚洲欧美精品| 国产欧美精品一区| 久久只有精品| 一二三四社区欧美黄| 欧美一站二站| 亚洲精美视频| 国产精品护士白丝一区av| 久久成人在线| 欧美激情欧美激情在线五月| 一本色道久久综合一区| 国产精品日韩欧美| 久久综合中文色婷婷| 亚洲精品国产精品乱码不99 | 欧美激情精品久久久久久大尺度| 亚洲乱亚洲高清| 国产欧美激情| 欧美激情一区在线观看| 亚洲欧美国产毛片在线| 免费在线日韩av| 国产精品99久久久久久久vr| 国产亚洲毛片在线| 欧美日韩国产色站一区二区三区| 亚洲男同1069视频| 欧美高清视频一二三区| 欧美尤物巨大精品爽| 亚洲日本黄色| 国内精品福利| 国产精品久久久久久久午夜| 欧美不卡三区| 欧美在线视频全部完| 日韩亚洲不卡在线| 欧美激情亚洲另类| 久久精品亚洲精品| 亚洲一区在线视频| 亚洲日韩视频| 亚洲第一综合天堂另类专| 国产伦理一区| 欧美午夜美女看片| 欧美精品久久99| 久久午夜精品| 久久久国产精品一区二区三区| 99精品福利视频| 亚洲区一区二| 亚洲国产综合在线| 欧美成人精品在线观看| 久久久久久网| 欧美在线视频a| 亚洲综合日韩在线| 亚洲一区二区精品在线| 99精品视频免费观看| 91久久在线| 一区二区三区免费观看| 午夜日韩在线| 亚洲欧美国产不卡| 亚洲欧美制服中文字幕| 亚洲一区二区在线看| 中国成人黄色视屏| 中文国产成人精品久久一| 亚洲精品日韩在线观看| 亚洲人成网在线播放| 亚洲区中文字幕| 亚洲精品中文字幕有码专区| 日韩一级免费| 亚洲视频大全| 亚洲一区在线看| 欧美在线免费观看视频| 久久国产精品久久久久久| 欧美一区国产二区| 久久久久欧美| 欧美福利视频| 91久久精品国产91久久| 亚洲精品一二三区| 99精品欧美一区二区三区 | 欧美电影美腿模特1979在线看| 开元免费观看欧美电视剧网站| 免费欧美日韩| 亚洲欧洲日产国产综合网| 亚洲伦伦在线| 亚洲欧美日韩精品久久亚洲区| 欧美一级在线视频| 久久亚洲精选| 欧美精品一二三| 国产精品久久国产精品99gif | 最新国产の精品合集bt伙计| 亚洲乱码国产乱码精品精98午夜| 亚洲私人影院在线观看| 欧美主播一区二区三区| 久久亚洲视频| 日韩视频在线观看一区二区| 亚洲一区尤物| 欧美69视频| 国产精品美女在线| 国内精品国产成人| 一区二区三区视频观看| 久久久xxx| 日韩视频亚洲视频| 久久国产精品久久国产精品| 欧美激情一区二区在线| 国产欧美在线播放| 亚洲美女视频| 久久综合伊人77777麻豆| 亚洲精品视频二区| 久久精品视频亚洲| 欧美日在线观看| 亚洲国内高清视频| 久久国产精品第一页| 最新高清无码专区| 久久精品国产亚洲一区二区三区| 欧美日韩国产三区| 在线欧美日韩精品| 久久成人一区| 中日韩在线视频| 免费中文字幕日韩欧美| 国产亚洲欧美一区二区三区| 亚洲一区3d动漫同人无遮挡| 美女亚洲精品| 欧美一区视频| 国产乱码精品1区2区3区| 一区二区国产日产| 亚洲激情网址|