然而,如果使用者輸入非數字資料,如「亞歷克斯」,cin將無法提取任何管理,並將設定failbit。
如果發生了乙個錯誤,乙個流將比其他任何goodbit,對該流將被忽略,進一步的操作流。這種情況可以通過呼叫clear()功能清除。
輸入驗證
輸入驗證是檢查使用者是否輸入滿足一定的標準過程。輸入驗證一般可以分為兩種型別:字串和數字。
字串的驗證,我們接受的所有使用者輸入乙個字串,然後接受或拒絕該字串取決於它是否是適當地格式。例如,如果我們要求使用者輸入乙個**號碼,我們可能想確保他們有十位資料輸入。在大多數語言中(尤其是指令碼語言,如perl和php),這是通過正規表示式。然而,c++沒有內建的正規表示式的支援(這是所謂的c + +下修改),因此這通常是通過檢查每個字元的字串,以確保其符合一定的標準。
數值驗證,我們通常涉及確定數量的使用者進入的是在乙個特定的範圍內(如0和20之間)。然而,不像字串驗證,使用者就有可能進入的東西並不在所有的數字,我們需要處理這些案件太。
來幫助我們,c++提供了許多有用的功能,我們可以用以確定特定字元是數字或字母。以下功能活在cctype頭:
123
4567
891011
1213
1415
1617
1819
2021
2223
2425
2627
2829
3031
3233
3435
#include #include #include using namespace std;
while (1)
// if the input has been accepted, exit the while loop
// otherwise we're going to loop again
if (!brejected)
break;
C 字串和數字拼接
string str1 str1 9 string str2 str2 9.tostring 我們先看第一行 的il 我直接截圖 可以看出 第一行 的 str1 9在執行是 會完成一次裝箱行為 il 中的box 我們再看第二行 的il 而第二行 種的9.tostring 並沒有發生裝箱行為 它實際呼...
字串和數字相關演算法
1 比較版本號 比較兩個版本號 version1 和 version2。如果 version1 version2 返回 1,如果 version1 version2 返回 1,除此之外返回 0。public class threesum 兩個字串比較版本 private static int com...
字串和數字轉換函式
vb中的字串函式比較多,也比較方便,就不一一介紹了.本文主要對字串相關的 轉換函式做一些小結.字串轉換的函式主要有 str 和val 用於字串和數字的相互轉換 chr 和asc 用於字串和ascii碼的相互轉換 chrw 和ascw 用於unicode碼和中文的相互轉換 format 函式用途十分廣...