」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 我如何有效地驗證用戶在C ++中的輸入?

我如何有效地驗證用戶在C ++中的輸入?

發佈於2025-03-22
瀏覽:475

How Can I Effectively Validate Integer Input from the User in C  ?
檢查用戶輸入是否有效

在使用用戶輸入時,必須確保數據輸入與預期的格式保持一致。在需要整數值的情況下,您可能會遇到用戶無意中輸入非數字字符的情況。

本文通過檢查標準輸入流CIN的輸入是否是整數來解決此問題的解決方案。這是實現的詳細分解:

cin.fail()函數檢查輸入流的狀態。如果輸入操作未成功(例如,由於輸入無效),該函數將返回真實並設置Failbit標誌。否則,它返回false。

此方法允許您確定輸入是否為整數。如果不是這樣,您可以採取適當的操作,例如提示用戶重新輸入有效的整數。

對於場景中,輸入流包含非INT字符的方案,然後是整數,您可以使用以下循環:

int x; while(cin.fail()){ cin.clear(); cin.ignore(256,'\ n'); cin >> x; }

int x;
cin >> x;

if (cin.fail()) {
    // Not an int.
}

Alternatively, if the user may input a non-integer string, you can read the input as a string, check if it contains only numbers, and convert it to an整數。但是,此方法可能不適用於預期浮點數的情況。

在摘要中,提供的代碼片段使您可以檢查標準輸入流的輸入是否是整數。如果沒有,您可以相應地處理情況,以確保您的程序中僅接受有效的整數值。

最新教學 更多>

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3