timer
-
kann mir jemandfolgenden quellcode erklären?
void stoppuhr( void *dummy ) { time_t start; while(weiter) { time(&start); //liefert die aktuelle Kalenderzeit printf("\b\b\b\b%3i:", count); while(difftime(time(NULL),start) < 1); count++; if (count == 10) weiter = 0; } }
Also spezielle die schleife
while(difftime(time(NULL),start) < 1); count++;
Versteh das nicht so ganz.
-
Bitte poste doch den Inhalt deiner Doku zum Thema difftime (ist in time.h)...
dann wirst du verstehen was die Schleife macht
-
Erstens gehört das "count++;" gar nicht mehr zur Schleife. Und zweitens nennt sich das "busy waiting" - die Schleife macht so lange gar nichts, bis der Unterschied (difftime()) zwischen ursprünglicher Zeit ('start') und aktueller Zeit ('time(NULL)') größer wird als eine Sekunde.