C ++ Berechnen von Zeitintervallen

Ich möchte Zeitintervalle (in 1/10 von 1 Sekunde) zwischen einigen Ereignissen in meinem Programm berechnen. Also benutze ichclock Funktion für diese Bedürfnisse wie folgt:

    clock_t begin;
    clock_t now;
    clock_t diff;

    begin = clock();

    while ( 1 )
    {
        now = clock();
        diff = now - begin;
        cout << diff / CLOCKS_PER_SEC << "\n";
        //usleep ( 1000000 );
    };

Ich erwarte, dass das Programm gedruckt wird0 dann für 1 Sekunde1 dann für 1 Sekunde2 für 1 sek. und so weiter ... Tatsächlich wird gedruckt0 dann für ungefähr 8 Sekunden1 für etwa 8 Sekunden und so weiter ...

Übrigens, wenn ich hinzufügeusleep in der Reihenfolge, in der das Programm nur einmal pro Sekunde druckt, wird nur gedruckt0 den ganzen Weg lang ...

Vielen Dank für die Hilfe!

Antworten auf die Frage(5)

Ihre Antwort auf die Frage