usleep()
是一个用于在 Linux 和 Unix 系统中暂停程序执行一段时间的函数
<unistd.h>
头文件,因为这是 usleep()
函数的声明所在。#include <unistd.h>
usleep()
函数:调用 usleep()
函数并传递一个表示要暂停的微秒数的参数。例如,要暂停 500 毫秒,可以将参数设置为 500000
。usleep(500000);
usleep()
函数可能会返回 -1,表示出现错误。因此,建议检查函数的返回值并相应地处理错误。if (usleep(500000) == -1) {
perror("usleep");
}
usleep()
函数在不同的操作系统上可能有不同的行为。在某些系统上,usleep()
可能不会提供高精度的延迟。在这种情况下,可以考虑使用其他方法,如 nanosleep()
。下面是一个完整的示例程序,演示了如何在 Ubuntu 中使用 usleep()
:
#include<stdio.h>
#include <unistd.h>
int main() {
printf("Starting...\n");
usleep(500000); // Sleep for 500 milliseconds
printf("Finished sleeping.\n");
return 0;
}
编译并运行此程序,你将看到 “Starting…” 和 “Finished sleeping.” 之间有一个 500 毫秒的暂停。