C++ Schleife eine Bestimmte zeit lang laufen lassen
Ich möchte eine schleife 10 Sekunden lang laufen lassen und bräuchte dabei hilfe denn ich möchte nicht die schleife sagen wir nach System GEschwindigkeit 10000 mal durchlaufen lassen sondern je nach system geschwindigkeit soll sich die Anzahl der Durchläufe ändern deswegen die zeit soll eine art Speedtest für den Pc werden.
3 Antworten
Schau dir mal diese Seite an: http://www.cplusplus.com/reference/chrono/high_resolution_clock/now/
Die Klasse nennt sich "std::chrono::high_resolution_clock". Damit kann man die Zeit ziemlich genau messen. Beim Beispiel wird auch eine Zeitspanne berechnet, was du dann auch bei dir in der Abbruchbedingung deiner Schleife machen kannst.
Bei java gibt es als bezugsobjekt eine uhr (in c++ meines wissens auch) die man zb 'clock' nennen kann. 1000 einheiten sind dabei eine sekunde dh man gibt ein clock.warte(10000); wenn sie 10 sek warten soll. Allerdings wird dadurch der gesamte quellcode angehalten. Wenn du währenddessen etwas anderes ausführen willst um die pcschnelligkeit zu messen macht es sinn; clock.starte(); und dann irgendwann zb if(clock.verstricheneZeit() > 10000). {} oder so..
Hoffe, das lässt sich auf c++ anwenden ^^
Soll ja nicht 10 Sekunden warten es Die schleife soll 10 Sekunden Laufen
Kleine ergänzung: in der schleife kannst du dann zb eine integervariabel immer um 1 erhöhen und nach 10 sek wenn die ausführbedingung der schleife durch die if-schleife (zb eine boolean) beendet worden ist weißt du dann je nach wert wie oft die schleife durchlaufen wurde heißt die geschwindigleit
Ok du hast hierzu nicht zufällig einen Beispiel Code?
Ich bin so ein Visueller Lerntyp ich brauch echt was zum Anblicken