#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <stdbool.h> //C语言bool类型并不是内置类型,需要包含这个头文件,否则报错
//延时函数,单位ms
bool SetDelay_ms(unsigned long ulMs)
{
bool bRet = true;
//clock()是C/C++中的计时函数,clock_t 是用来保存时间的数据类型,返回的单位是毫秒
//如果想返回以秒为单位可以用:clock() / CLOCKS_PER_SEC 来计算
clock_t clockStart = clock();//返回值表示该程序从启动到函数调用占用CPU的时间。
clock_t clockNext = clock();
//(cNext - cStart) / CLOCKS_PER_SEC是秒值,乘以1000 就是毫秒值
//CLOCKS_PER_SEC表示一秒钟内CPU运行的时钟周期数(时钟计时单元)
while (1000.0 * (clockNext - clockStart) / CLOCKS_PER_SEC < ulMs)
{
if ((clockNext = clock()) == (clock_t)(-1))
{
bRet = false;
break;
}
}
return bRet;
}
这里的编译工具是VS Code, MSVC编译环境,这个函数将做毫秒级延时,正常延时返回true,否则返回false