亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在需要數字時鍵入字符串時使用CIN的無限循環

在需要數字時鍵入字符串時使用CIN的無限循環

C++
互換的青春 2019-06-17 17:42:57
在需要數字時鍵入字符串時使用CIN的無限循環在下面的循環中,如果我們將字符鍵入為cin輸入而不是期望的數字,然后進入無限循環。有人能給我解釋一下為什么會發生這種事嗎?當我們使用cin,如果輸入不是一個數字,那么是否有方法檢測到這一點以避免上述問題?unsigned long ul_x1, ul_x2;while (1){   cin >> ul_x1 >> ul_x2;   cout << "ux_x1 is " << ul_x1 << endl << "ul_x2 is " << ul_x2 << endl;}
查看完整描述

3 回答

?
喵喔喔

TA貢獻1735條經驗 獲得超5個贊

也許是因為

  1. CIN是一個流函數。當輸入一個非數字而不是數字時,它將被忽略.你會被提示重新進入。
  2. 即使您確實提供了數字輸入,也會提示您輸入更多的輸入,因為您處于無限循環中。

您可以這樣解決這個問題:1.創建一個接受字符串輸入的函數。2.轉換后以數值形式返回它。使用strtod()進行轉換。

希望這有幫助:)


查看完整回答
反對 回復 2019-06-17
  • 3 回答
  • 0 關注
  • 699 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號