Programm soll erstma "schlafen" !!
-
habe beiträge vorher gesucht und da stand dass man das mit sleep machen kann und die pakete muss man dazu includieren.. aba geht ja net.. kann also gelöscht werden^^
-
mngbd schrieb:
#include <unistd.h>
Was ist denn das?
#include <windows.h>
Und wozu ist dann das??
Das sind windows- und unixspezifische Header.
Icke: Windows kennt Sleep(milliseconds), unter Linux heisst es sleep(seconds), wenn ich mich nicht täusche. Eine Funktion für beide OS könnte etwa so aussehen:
void SleepSeconds (size_t n) { #ifdef WIN32 Sleep(n*1000); #else sleep (n): #endif }
-
#ifdef WIN32 #define MY_SLEEP(x) Sleep((x)*1000) #else #define MY_SLEEP(x) sleep((x)) #endif
-
Funktionsähnliche Makros mag ich irgendwie nicht.
-
void SleepMilliSeconds (size_t n) { #ifdef WIN32 Sleep(n); #else usleep(n*1000): #endif }
So ist's genauer.
-
Wie soll ich das denn in meinen code reinschreiben?? ich verstehe das iwie nicht -.- .. Also die Aufgabe ist:
Schreiben Sie ein C-Programm p1, welches eine bestimmte Anzahl an Sekunden schläft, dann den Text ausgibt "./p1 nach der 1. Schlafzeit", dann nochmals die gleiche Zeit schläft und zum Aschluss den Text "./p1 nach der 2.Schlafzeit" ausgibt. Dabei steht ./p1 für den Namen des Programms aus der argc übernehmen. Auch die Schlafzeit in Sekunden ist an das Programm zu übergeben.
-
#include <stdio.h> #ifdef WIN32 #include <windows.h> #else #include <unistd.h> #endif //WIN32 void SleepMilliSeconds (size_t n) { #ifdef WIN32 Sleep(n); #else usleep(n*1000): #endif } int main() { printf("first message\n"); SleepMilliSeconds(1000); //1 Sekunde warten printf("after 1 second\n"); }
-
das kann mein C Compiler nicht kompilieren.
-
supertux schrieb:
das kann mein C Compiler nicht kompilieren.
Wär' sonst auch irgendwie komisch^^
Sorry, jetzt fange ich grad an, mich an die C++-I/O zu gewöhnen...Habs editiert.
-
int main(void)
{
...
}