GetTickCount函數
函數功能:GetTickCount返回(retrieve)從作業系統啟動到現在所經過(elapsed)的毫秒數,它的傳回值是DWORD。
函數原型:
DWORD GetTickCount(void);
VB版
VB聲明:
Declare Function GetTickCount Lib "kernel32" Alias "GetTickCount" () As Long
例如:實現延時
Public Sub Sleep(numa As Long)
Dim num1 As Long
Dim num2 As Long
Dim numb As Long
numb = 0
num1 = GetTickCount
Do While numa - numb > 0
num2 = GetTickCount
numb = num2 - num1
DoEvents
Loop
End Sub
C++版
CString s;
DWORD k=::GetTickCount(); //擷取毫秒級數目
int hm=k/3600000; //hm為小時數
int ms=(k-3600000*hm)/60000; //ms為分鐘數
int se=(k-3600000*hm-60000*ms)/1000; //se為秒數(除以1000是因為k精確到毫秒)
s.Format("%d:%d:%d",hm,ms,se); //輸出時、分、秒
庫檔案:kernl32.dll
C/C++標頭檔:winbase.h
windows程式設計中可以使用標頭檔windows.h
編輯本段
程式樣本
//代替time函數來初始化隨機數產生器
#include<stdio.h>
#include<windows.h>
int main()
{
int i,k,r;
for(i=0;i<10;i++)
{
srand(GetTickCount());
printf("/n");
for(k=0;k<5;k++)
{
r=rand();
printf("%d ",r);
}
}
return 0;
}