Ich versuche N feste Länge Datensatz vom Typ structSchreiben Feste Länge Datensätze in eine Datei C++
const int N = 101;
char dummay[] = "#####";
struct hashTable
{
char name[51];
int RRN;
};
int main(){
fstream f("hashFile.txt");
f.seekp(0,ios::beg);
hashTable h;
for (int i = 0 ; i < N ; i++) {
strcpy(h.name,dummay);
h.RRN = i;
f.write((char*)&h,sizeof h);
}
und wenn ich versuche, diese Datensätze wieder ausgeben, werden nur die ersten 25 Datensätze funktioniert gut zu schreiben !
f.seekp(0,ios::beg);
for (int i = 0 ; i < N ; i++)
{
f.read((char*)&h,sizeof h);
cout << h.RRN << endl << h.name << endl;
}
die komplette code, warum dies geschieht und wie es zu lösen?
Verwenden Sie die richtigen Variablennamen –
Der Code, den Sie auf ideone zeigen, gibt mehr als 25 Datensätze korrekt aus. –
nur 25 Datensätze sind korrekt auf meinem Computer, aber das Problem gelöst, siehe die erste Antwort. –