C-Anfänger: Kann nicht mit delay() in einem einfachen C-Programm
test1.c
#include <stdio.h>
int main(void) {
printf("test\n");
delay(1000);
printf("test2\n");
}
Wenn ich versuche zu kompilieren...
gcc test1.c -o test1
Undefined symbols for architecture x86_64:
"_delay", referenced from:
_main in ccUnw3tY.o
ld: symbol(s) not found for architecture x86_64
collect2: ld returned 1 exit status
Sicherlich gibt es eine Lektion hier zu wissen, Ihre Bibliotheken, und das, was verknüpfen, usw... Was bin ich? Ich bin versucht, dies zu tun auf OSX.
- So ziemlich jeder die Antwort unter mir hilft. Danke Jungs. usleep funktioniert Super.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Es gibt keine delay-Funktion in C, die Sie haben zu verwenden
sleep
oderusleep
je nachdem, was Betriebssystem Sie auf.delay
. Es ist einfach nicht in POSIX (was OSX basiert weitgehend auf).Was machen Sie denken, es ist eine delay-Funktion. Ich sehe nicht ein eine in den osx-docs. Gibt es eine sleep-Funktion
https://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/man3/sleep.3.html
usleep
ist für.Eine alternative Verzögerungszeit in C unter unix os wird die Schlaf-Funktion :
https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man3/sleep.3.html
tun Sie etwas wie :
Wenn Sie den Wert für 1000 microsecondes.
usleep
nimmt Mikrosekunden, nicht Millisekunden.Die delay-Funktion funktioniert im Borland-C-compiler. Verwenden Sie die
dos.h
header-Datei delay. Einige andere Compiler wieMinGW
möglicherweise nicht diese Unterstützung.