ここのコードは、学生レポートカードプロジェクトの作成に使用されています。私たちは以下のコードを使用し、機能を把握することはできません理解しようとしているとき:reinterpret_cast <char *>(&st)と(-1)* static_cast <int>の意味は何ですか?
File.read(reinterpret_cast<char *> (&st), sizeof(student));
int pos=(-1)*static_cast<int>(sizeof(st));
File.read(reinterpret_cast<char *> (&st), sizeof(student));
if(st.retrollno()==n)
{
st.showdata();
cout<<"\n\nPlease Enter The New Details of student"<<endl;
st.getdata();
int pos=(-1)*static_cast<int>(sizeof(st));
File.seekp(pos,ios::cur);
File.write(reinterpret_cast<char *> (&st), sizeof(student));
cout<<"\n\n\t Record Updated";
found=true;
}
生徒は何ですか?このコードは、生のバイナリとして読み込みます。学生のタイプが標準レイアウトでない場合はUBです。また、エンディアンに問題があります – Danh
あなたの質問には、reinterpret_castとstatic_castの内容が本当に分かりません。 – Omnifarious