Huhu,
ich hoffe ihr könnt etwas mit der Problembeschreibung anfangen: In einem Teil meines "Programms" entsteht ein Speicherzugriffsfehler und ich bin nicht in der Lage den Grund zu finden.
Der Fehler tritt auf nachdem die Schleife abgearbeitet wurde, ob ich jetzt den Speicher auf dem Heap wieder freigebe hat keinen Unterschied gemacht, habe das also mal weggelassen damit man den Fehler schneller findet.
Vielleicht hätte ich den Fehler schon gefunden wenn ich meinen ddd ans laufen bekäme...sorry mehr hab ich nicht drauf, bin absoluter newbie was c++ und den ddd angeht. ^^
liebe Grüße,
SOURCEry
ich hoffe ihr könnt etwas mit der Problembeschreibung anfangen: In einem Teil meines "Programms" entsteht ein Speicherzugriffsfehler und ich bin nicht in der Lage den Grund zu finden.
Code:
/*Hier beginnt der Trainingsmodus, Vokabeln der Fremdsprache werden aus der Datei text.txt ausgelesen,
nun soll der Benutzer einen string eingeben, mit dem dann die Übersetzung der Vokabel verglichen wird!*/
if(mode==3){
char *p1, *p2;
fstream f("text.txt");
char* dummy=new char[1024];
char* voc=new char[512];
while(!f.eof()) {
f.getline(dummy, 1024);
p1=dummy;
p2=strchr(p1, '|');
*p2++ = '\0';
cout << p1 << " heisst uebersetzt!?" << endl;
cin >> voc;
if(strcmp(p2,voc)!=0){
cout << "NEIN DU TROTTEL! " << p1 << " bedeutet " << p2 << " uebersetzt!" << endl;
}
else { cout << "RICHTIG! Gut gemacht!" << endl;
}
}
}
Der Fehler tritt auf nachdem die Schleife abgearbeitet wurde, ob ich jetzt den Speicher auf dem Heap wieder freigebe hat keinen Unterschied gemacht, habe das also mal weggelassen damit man den Fehler schneller findet.
Vielleicht hätte ich den Fehler schon gefunden wenn ich meinen ddd ans laufen bekäme...sorry mehr hab ich nicht drauf, bin absoluter newbie was c++ und den ddd angeht. ^^
liebe Grüße,
SOURCEry