核心提示:C语言中如何获取时间?精度如何?
1使用time_ttime(time_t*timer)精确到秒
2使用clock_tclock()得到的是CPU时间精确到1/CLOCKS_PER_SEC秒
3计算时间差使用doubledifftime()
C语言中如何获取时间?精度如何?
1 使用time_t time( time_t * timer ) 精确到秒
2 使用clock_t clock() 得到的是CPU时间 精确到1/CLOCKS_PER_SEC秒
3 计算时间差使用double difftime( time_t timer1, time_t timer0 )
4 使用DWORD GetTickCount() 精确到毫秒
5 如果使用MFC的CTime类,可以用CTime::GetCurrentTime() 精确到秒
6 要获取高精度时间,可以使用
BOOL QueryPerformanceFrequency(LARGE_INTEGER *lpFrequency)
获取系统的计数器的频率
BOOL QueryPerformanceCounter(LARGE_INTEGER *lpPerformanceCount)
获取计数器的值
然后用两次计数器的差除以Frequency就得到时间。
|
一.time()函数
time(&rawtime)函数获取当前时间距1970年1月1日的秒数,以秒计数单位,存于rawtime 中。
|
#include -- 必须的时间函数头文件
time_t -- 时间类型(time.h 定义是typedef long time_t; 追根溯源,time_t是long)
struct tm -- 时间结构,time.h 定