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