sleep im terminal
-
hallo, ich schr3eibe mom ein linux game
leider ist die funcktion SLEEP nicht ausführbar
ich weis die man den header#include <unistd.h>
einbinden muss aber wenn ich im terminal mein programm ausführe , dann kommt nichts mehr
code:
#include <unistd.h> ... cout<<"test1"; sleep(1000); cout<<"test2"; ...
wenn ich dann ausführe , dann bleibt der bildschirm schwartz - bis ich dann eine taste drücke , dann kann ich zwar was eingeben (alles mögliche)
aber keine befehler mehr - z.b. exit oder so
gibt es noch eine andere "sleep" function ???
-
Funktioniert doch. Musst nur 1000 Sekunden warten
Verwende usleep(ms)
-
iglo-man schrieb:
hallo, ich schr3eibe mom ein linux game
leider ist die funcktion SLEEP nicht ausführbar
ich weis die man den header#include <unistd.h>
einbinden muss aber wenn ich im terminal mein programm ausführe , dann kommt nichts mehr
code:
#include <unistd.h> ... cout<<"test1"; sleep(1000); cout<<"test2"; ...
wenn ich dann ausführe , dann bleibt der bildschirm schwartz - bis ich dann eine taste drücke , dann kann ich zwar was eingeben (alles mögliche)
aber keine befehler mehr - z.b. exit oder so
gibt es noch eine andere "sleep" function ???
cout wie printf legen zunächst die Daten auf einen Puffer, der nicht sofort ans Terminal geschrieben wird (to flush). Mach es so:
#include <unistd.h> ... cout<<"test1" << std::flush; sleep(1000); cout<<"test2" << std::flush; ...
damit wird sofort auf stdout geschrieben.
-
DANKE hat geklappt
warum sagt mir keiner dass SLEEP(100) = 100 sec sind ? ???
zumindes in knoppix
-
iglo-man schrieb:
DANKE hat geklappt
warum sagt mir keiner dass SLEEP(100) = 100 sec sind ? ???
zumindes in knoppix
Weil Du ja nicht nach
SLEEP(100)
sondern nachsleep(1000)
gefragt hast. Und da hast Du ja eine korrekte Antwort bekommen.Was hast Du erwartet? 100 Stunden? 100 Jahre? 100 Äpfel?
Ganz abgesehen davon steht das in jeder Man-page und jeglicher Dokumentation. Und das nicht nur in Knoppix, sondern in allen Linux und Unix man pages zur sleep-Funktion
.