0
我有一些代碼: 我希望在一個ID,確保它是8字符的長度,確保每個數字是一個數字,並繼續詢問,直到他們給出正確的輸入。在某人的標記之前,我研究並試圖查看給出的答案:c 我不明白爲什麼它說我輸入的id 00000002是根據我的代碼的無效ID。它不工作。誰能幫忙?我在哪裏出錯我的錯誤數據驗證C++
void Student::getData(){
string id_;
cout << "lastName?" << endl;
cin >> lastName;
cout << "firstName?" << endl;
cin >> firstName;
cout << "ID?" << endl;
while(getline(cin,id_) && id_.size() != 8){
cout << "Invalid ID" << endl;
}
您是否添加了cout來查看'id_'的實際大小是多少?這將有助於您進一步調試。 – scrappedcola
建議投入一些時間學習使用IDE附帶的調試器。它會向你顯示幾乎立即發生的事情。它不會告訴你爲什麼,但會讓你更容易找到答案。這是一個問題,每週要問幾次。我們可能需要一個「爲什麼getline失敗?」僞問題更容易搜索。 – user4581301