Функция возвращает системное время. Системное время выражается в UTC:
VOID GetSystemTime ( LPSYSTEMTIME lpSystemTime );
В lpSystemTime нужно передать указатель на структуру SYSTEMTIME ее описание есть в шаге "Шаг 141 - WINAPI и время". Давайте попробуем. Win 32 Console Application как всегда.
#include "stdafx.h" #include "windows.h" #include "iostream.h" void main() { SYSTEMTIME sm; GetSystemTime(&sm); cout << sm.wHour << endl; }
Результат работы этой функции немного непривычен. Смотрите на рисунок. Это не есть локальное время. Это есть универсальное время UTC.
И результат возврата зависит от часового пояса. При установке другого часового пояса будет получен другой результат. Ставим другой часовой пояс.
Получаем другой результат.
Так вот результат работы этой функции зависит от установки часового пояса в Windows, и если Вы будете пользоваться функцией, то корректность часового пояса нужно проверять.