/**typedef union _LARGE_INTEGER {
struct {
DWORD LowPart;
LONG HighPart;
} DUMMYSTRUCTNAME;
} u;
#endif //MIDL_PASS
LONGLONG QuadPart;
} LARGE_INTEGER;**///上邊是LARGE_INTEGER的聯合體聲明,不用寫,系統自己調用
int printTime(){
LARGE_INTEGER tick;
LARGE_INTEGER timestamp;
long time;
QueryPerformanceFrequency(&tick);
//QueryPerformanceFrequency函數得到你的計算機裡高精度計時器每秒計時多少次,
//QueryPerformanceCounter函數得到目前計時器記了多少次.類似與GetTickCout.
QueryPerformanceCounter(&timestamp);
int us=(timestamp.QuadPart % tick.QuadPart)*1E6/tick.QuadPart;//取微秒級的時間
<b></b>
<b>/*us就是計算秒之後的時間*/</b>
time = timestamp.QuadPart/tick.QuadPart;
int hours = time/3600;
time=time- (hours * 3600);
int minutes = time/60;
int seconds = time- (minutes * 60);
printf(
"系統已經啟動了 %d小時%d分%d秒 %u微秒\n系統鐘頻%u, %uMHz\n",
hours, minutes, seconds,
us,
tick.LowPart,
tick.LowPart/1000000
);//列印當時的時間
<b>return us,傳回微秒級的時間,注意這裡隻傳回的是秒以後的時間,并未傳回準确的時間</b>
}
将時間輸出到微妙級别
本文轉自 神迹難覓 51CTO部落格,原文連結:http://blog.51cto.com/ji123/1977874,如需轉載請自行聯系原作者