在MinGW GCC下编译带sleep()函数的测试程序,不管是包含了unistd.h头文件,还是
stdio.h、stdlib.h头文件,就是找不到该函数的定义!
在linux下,sleep()函数的头文件是:unistd.h,但在MinGW GCC下没有了这个函数的定义,到是在windows.h文件中有Sleep()函数的定义,其单位是ms级的延迟处理。根据这种情况,我们可以采用如下的处理:
#if defined(WIN32) || defined(WIN64)
#include <windows.h>
#define sleep(n) Sleep(1000 * (n))
#else
#include <unistd.h>
#endif
gcc main.c -o main.exe