1微秒等于一百万分之一秒(10-6秒)
0.000 001 微秒 = 1皮秒
0.001 微秒 = 1纳秒
1,000 微秒 = 1毫秒
1,000,000 微秒 = 1秒
1,标准C接口
可以调用标准C的接口time来得到开始和结束的时间,再调用difftime接口来计算时间差,精度是秒
#include <stdio.h>
#include <time.h>
int main(){
time_t t_start, t_end;
t_start= time(NULL);
sleep(3000);
t_end= time(NULL);
printf("time: %.0f s\n", difftime(t_end,t_start));
return 0;
}
2,linux系统API
C语言里没有标准的接口可以获得精确到毫秒的时间,可调用到与操作系统相关的API。gettimeofday能得到微秒数,比毫秒还要更精确。
#include <stdio.h>
#include <sys/time.h>
int main(){
struct timeval start, end;
gettimeofday(&start, NULL );
sleep(3);
gettimeofday(&end, NULL );
int timeuse= 1000000* (end.tv_sec- start.tv_sec)+ end.tv_usec- start.tv_usec;
printf("time: %d us\n", timeuse);
return 0;
}