GetLocalTime是一個Windows API 函式,用來獲取當地的當前系統日期和時間。
基本介紹
- 中文名:GetLocalTime
- 性質:一個Windows API 函式
- 目的:獲取當地的當前系統日期和時間
- 說明:指向類型為 SYSTEMTIME 的變數
函式簡介,程式示例,C版本,Ada版本,
函式簡介
函式原型:
VOID GetLocalTime(
LPSYSTEMTIME lpSystemTime //address of system times structure
);
參數說明:
lpSystemTime: 指向一個用戶自定義包含日期和時間信息的類型為 SYSTEMTIME 的變數,該變數用來保存函式獲取的時間信息。
此函式會把獲取的系統時間信息存儲到SYSTEMTIME結構體裡邊
typedef struct _SYSTEMTIME
{
WORD wYear;//年
WORD wMonth;//月
WORD wDayOfWeek;//星期,0為星期日,1為星期一,2為星期二……
WORD wDay;//日
WORD wHour;//時
WORD wMinute;//分
WORD wSecond;//秒
WORD wMilliseconds;//毫秒
}SYSTEMTIME,*PSYSTEMTIME;
適用平台/頭檔案和程式庫:
Windows 95及以上版本、Windows NT3.1及以上版本、Windows CE1.0及以上版本
頭檔案: winbase.h
程式庫:coredll.lib
舉例:
SYSTEMTIME stTime;
GetLocalTime(&stTime);
WORD wYear = stTime.wYear;
WORD wMonth = stTime.wMonth;
WORD wDay = stTime.wDay;
WORD wHour = stTime.wHour;
WORD wMinute = stTime.wMinute;
WORD wSecond = stTime.wSecond;
CString m_date;
//m_date字元串即為當前時間。如:2010年4月23日 11:12:45
m_date.Format("%4d年%2d月%2d日 %2d:%2d:%2d", wYear, wMonth, wDay, wHour, wMinute, wSecond);
程式示例
C版本
#include<stdio.h>#include<windows.h>#include<winbase.h>intmain(intargc,char*argv[]){SYSTEMTIMEtime;GetLocalTime(&time);printf("當前時間為:%2d:%2d:%2d\n",time.wHour,time.wMinute,time.wSecond);return0;}
執行結果:
當前時間為:12: 5:52
Ada版本
with Text_IO;
with Win32.Winbase;
procedure Local_Time is
package WORD_IO is new Text_IO.Modular_IO (Win32.WORD);
Time : aliased Win32.Winbase.SYSTEMTIME;
begin
Win32.Winbase.GetLocalTime (Time'Unchecked_Access);
WORD_IO.Default_Width := 2;
Text_IO.Put ("當前時間為:");
WORD_IO.Put (time.wHour); Text_IO.Put (':');
WORD_IO.Put (time.wMinute); Text_IO.Put (':');
WORD_IO.Put (time.wSecond); Text_IO.New_Line;
end Local_Time;
執行結果:
當前時間為:12: 5:52