/*
标准库写实现可移植
void delay_ms(long ms)//参数单位毫秒
void delay_s(int sec)//参数单位秒
difftime函数原型:
double difftime(time_t time1,time_t time0);
clock函数原型:
clock_t clock(void);
返回值:微秒除以宏CLOCKS_PER_SEC即是单位秒
*/
#include<stdio.h>
#include<time.h>
//毫秒级
void delay_ms(long ms)
{
//微秒
long usec=ms*1000;
clock_t end;
end=clock()+(clock_t)(usec);
while(clock()<end);
}
//秒级
void delay_s(int sec)
{
clock_t end;
end=clock()+(clock_t)(sec*CLOCKS_PER_SEC);
while(clock()<end);
}
int main()
{
//clock_t start;
time_t start=time(NULL);
//start=clock();
//调用延时函数,延迟3秒
delay_ms(3000);
time_t end=time(NULL);
//printf("\n延时了%ld毫秒\n",(clock()-start)/1000);
printf("\n延时了%f秒\n",difftime(end,start));
return 0;
}