Heim >Backend-Entwicklung >C++ >Wie kann ich die verstrichene Zeit in C genau messen?
Einfache Messung der verstrichenen Zeit
Um die verstrichene Zeit von Programmsegmenten genau zu messen, stehen Alternativen zur weniger präzisen Funktion time() zur Verfügung.
Verwenden von gettimeofday()
As Wie im bereitgestellten Code gezeigt, bietet gettimeofday() eine Timer-Präzision bis zu Mikrosekunden. Durch Berechnen der Differenz zwischen einer Start- und Endzeitmessung können Sie Werte für die verstrichene Zeit erhalten.
Ergebnisse interpretieren
Zeitwertinterpretation:
C 11 Approach
Ein modernerer und präziserer Ansatz nutzt den C 11
Beispielcode
// C++11 Style: #include <chrono> std::chrono::steady_clock::time_point begin = std::chrono::steady_clock::now(); std::chrono::steady_clock::time_point end = std::chrono::steady_clock::now(); std::cout << "Time difference = " << std::chrono::duration_cast<std::chrono::microseconds>(end - begin).count() << "[µs]" << std::endl; std::cout << "Time difference = " << std::chrono::duration_cast<std::chrono::nanoseconds>(end - begin).count() << "[ns]" << std::endl;
Dieser Code berechnet den Zeitunterschied sowohl in Mikrosekunden als auch in Nanosekunden und bietet präzisere Messungen als time() oder gettimeofday().
Das obige ist der detaillierte Inhalt vonWie kann ich die verstrichene Zeit in C genau messen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!