void display_a_student(char n[])
{
cout<<"\nSTUDENT DETAILS\n";
int check=0; ***** WHY ARE WE USING THIS CHECK ??????
fp.open("student.dat",ios::in);
while(fp.read((char*)&st,sizeof(student)))
{
if((strcmpi(st.get_ID_number(),n)==0))
{
st.show_student();
check=1; ----> What is this ?
}
}
fp.close();
if(check==0)
cout<<"\n\nStudent does not exist";
getch();
}
我不理解这个&#34;检查&#34;在代码? 请尽快告诉我答案:) 这是代码..
答案 0 :(得分:-1)
我认为编码器会尝试使用check变量作为一种机制来判断文件中是否存在任何学生记录。
如果没有找到学生记录..那么它将打印消息: cout&lt;&lt; “学生不存在”; ..
答案 1 :(得分:-1)
这是一面旗帜。它用于检查用户记录是否存在。如果您看到此代码,
if(check==0)
cout<<"\n\nStudent does not exist";
你可以看到他们检查它是否为零&amp;打印字符串"Student does not exist"
,这意味着零是默认值。如果存在学生详细信息,则将其设置为1。该检查在以下代码中完成,
if((strcmpi(st.get_ID_number(),n)==0)) --> This will be true only if student record exists.
{
st.show_student();
check=1; ----> The flag is set here.
}
最后,这个标志不需要总是命名为“check”。你可以拥有自己的名字。