[英]How to validate user input for month entry in date?
我正在編寫一個程序來驗證用戶輸入的格式為 1900 年 1 月 1 日的日期輸入。我編寫了代碼來驗證每個月的閏年和日限制,但我無法驗證每個月的文本輸入。
這是代碼中尚未運行的部分; 字符串條目的驗證,以便除 Jan、Feb、Mar、Apr 之外的任何用戶輸入.......Dec 將拋出錯誤“錯誤的條目,請輸入有效日期”
if (( month != "Jan" || month != "Feb" || month != "Mar" || month != "Apr"
|| month != "May" || month != "Jun" || month != "Jul" || month != "Aug"
|| month != "Sep" || month != "Oct" || month != "Nov" || month != "Dec"))
{
std::cout << "Wrong entry, please enter valid date." << std::endl;
}
else
{
std::cout << day << " " << month << " " << year;
}
您正在檢查月份是否不是“一月”或不是“二月”或等等。由於月份不能同時是所有可能的月份,因此您的if
條件將始終為真。
替換||
在您的條件下使用&&
,它將正常工作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.