Probleme bei einer For-Schleife
-
Schönen Guten Tag,
ich hab da ein Problem in meinem Programm und zwar wird in der For-Schleife, in der nachfolgenden main Funktion nur Maximal 2 mal durchlaufen, auch wenn ich zum beispiel bei Anzahl der Runden 12 eingebe.[code] int main(int argc, char **argv) { int max; int i=0; int zufall; int runde; unsigned int r ; PGconn *conn = NULL; cout <<"Bitte geben Sie die Anzahl der Fragen im Katalog an"<< endl <<"xx für leichte "<< endl <<"xx für etwas hefigere"<< endl << "xx für alle Fragen"<<endl; cin >>max; cout <<"nun Geben Sie bitte die anzahl an Spielrunden ein"<<endl; cin>> runde; FILE* f = fopen("/dev/random", "r"); conn = ConnectDB(); for ( i=0; i < runde; i++) { cout << " runde "<< i <<endl; fread(&r, sizeof(r), 2, f); zufall= r%max; FetchRan(conn,zufall); //cout << endl <<"Press ENTER to continue....."<<endl ; //getchar(); } CloseConn(conn); return 0; } int main(int argc, char **argv) { int max; int i=0; int zufall; int runde; unsigned int r ; PGconn *conn = NULL; cout <<"Bitte geben Sie die Anzahl der Fragen im Katalog an"<< endl <<"xx für leichte "<< endl <<"xx für etwas hefigere"<< endl << "xx für alle Fragen"<<endl; cin >>max; cout <<"nun Geben Sie bitte die anzahl an Spielrunden ein"<<endl; cin>> runde; FILE* f = fopen("/dev/random", "r"); conn = ConnectDB(); for ( i=0; i < runde; i++) { cout << " runde "<< i <<endl; fread(&r, sizeof(r), 2, f); zufall= r%max; FetchRan(conn,zufall); //cout << endl <<"Press ENTER to continue....."<<endl ; //getchar(); } CloseConn(conn); return 0; } [/code]
-
Schau doch mal mit dem Debugger nach, woran es liegt. Haltepunkt setzen, durchsteppen und Werte und Ablauf überprüfen.
-
hab den Fehler gefunden
fread(&r, sizeof(r), 2, f); war zu groß das er meine Runden Vaiable Überschrieben hat daher hab ich die 2 in ne 1 geändert und es lief.
kann geschlossen werden.