0

测试1.c

#include <stdio.h>

int main(void) {
  printf("test\n");
  delay(1000);
  printf("test2\n");
}

当我尝试编译...

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

当然,了解您的图书馆以及链接是什么等方面有一个教训......我错过了什么?我正在尝试在 OSX 上执行此操作。

4

4 回答 4

4

C中没有延迟功能,您必须使用sleepusleep取决于您使用的操作系统。

于 2013-03-01T00:52:32.883 回答
1

是什么让您认为有延迟功能。我在 osx 文档中没有看到。有睡眠功能

https://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/man3/sleep.3.html

于 2013-03-01T00:53:23.093 回答
1

用于 unix os 的 C 延迟的替代方法是睡眠功能: https ://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man3/sleep.3.html 执行以下操作:

#include <stdio.h>
#include <unistd.h>

int main(void) {
  printf("test\n");
  usleep(1000);
  printf("test2\n");
}

如果您的值是 1000 微秒。

于 2013-03-01T00:54:48.010 回答
0

延迟函数在 Borland C 编译器中工作。您必须使用dos.h头文件才能使用延迟。其他一些编译器MinGW可能不支持这一点。

于 2013-11-18T16:28:58.023 回答