我有一個程序,我正在進行日期驗證。我以MM/DD/YYYY的形式接收用戶的輸入並將其存儲爲字符數組。如何獲得一個字符數組的特定索引的實際值
首先,我試圖用鑄造
char UserDate[10];
int month = 00, day = 00, year = 0000;
cout << "Enter a date in the format of MM/DD/YYYY" << endl;
cin >> UserDate;
month = (int)UserDate[0] + (int)UserDate[1];
day = (int)UserDate[3] + (int)UserDate[4];
year = (int)UserDate[6] + (int)UserDate[7] + (int)UserDate[8] + (int)UserDate[9];
然後我試圖把它拆開分解成int對於月日和年變量,而鑄造
char UserDate[10];
int month = 00, day = 00, year = 0000;
cout << "Enter a date in the format of MM/DD/YYYY" << endl;
cin >> UserDate;
month = UserDate[0] + UserDate[1];
day = UserDate[3] + UserDate[4];
year = UserDate[6] + UserDate[7] + UserDate[8] + UserDate[9];
的問題是我不能得到實際值超出數組的索引。 我得到的日期,結果進入01/01/2014
如下:
month = 48'0' + 49'1'; //months value is 97
day = 48'0' + 49'1'; //days value is 97
year = 50'2' + 48'0' + 49'1' + 52'4'; //years value is 199
這裏面有我上面是否投炭int或沒有這兩種方法。如何獲得存儲在我想要的索引中的值,因爲沒有UserDate[1].Value
??
使用'scanf'讀入整數值。 –
@JoelCornett他爲什麼要那樣做? –