問題陳述
在C 程式中,確保使用者輸入是至關重要的是預期的格式,特別是在執行數學運算時。本文討論如何確定使用者提供的輸入是否為整數。如果輸入的不是整數,程式會提示使用者重新輸入有效的整數。
解
驗證使用者輸入的方法主要有兩種作為整數:
1。使用 cin.fail():
2。使用 std::getline 和字串操作:
實作
以下是實作std::getline 和字串操作的程式碼片段做法:
#include <iostream> #include <string> int main() { std::string theInput; int inputAsInt; std::getline(std::cin, theInput); while(std::cin.fail() || std::cin.eof() || theInput.find_first_not_of("0123456789") != std::string::npos) { std::cout << "Error" << std::endl; if( theInput.find_first_not_of("0123456789") == std::string::npos) { std::cin.clear(); std::cin.ignore(256,'\n'); } std::getline(std::cin, theInput); } std::string::size_type st; inputAsInt = std::stoi(theInput,&st); std::cout << inputAsInt << std::endl; return 0; }
此程式碼不斷提示使用者輸入整數,直到輸入有效的整數。它處理使用者輸入非數字字元或提供空輸入的情況。
以上是如何在 C 中有效驗證使用者輸入的整數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!