Структура SYSTEMTIME представляет дату и время, используя отдельные члены для месяца, дня, года, дня недели, часа, минут, секунд и миллисекунд.
typedef struct _SYSTEMTIME { WORD wYear; WORD wMonth; WORD wDayOfWeek; WORD wDay; WORD wHour; WORD wMinute; WORD wSecond; WORD wMilliseconds; } SYSTEMTIME, *PSYSTEMTIME; |
Год. Допустимые значения для этого члена структуры 1601 - 30827.
wMonthМесяц. Этот член структуры может быть одним из ниже перечисленных значений.
Значение |
Предназначение |
---|---|
1 | January (Январь) |
2 | February (Февраль) |
3 | March (Март) |
4 | April (Апрель) |
5 | May (Май) |
6 | June (Июнь) |
7 | July (Июль) |
8 | August (Август) |
9 | September (Сентябрь) |
10 | October (Октябрь) |
11 | November (Ноябрь) |
12 | December (Декабрь) |
wDayOfWeek
День недели. Этот член структуры может быть одним из ниже перечисленных значений.
Значение |
Предназначение |
---|---|
0 | Sunday (Воскресенье) |
1 | Monday (Понедельник) |
2 | Tuesday (Вторник) |
3 | Wednesday (Среда) |
4 | Thursday (Четверг) |
5 | Friday (Пятница) |
6 | Saturday (Суббота) |
wDay
День месяца. Допустимые значения для этого члена структуры 0-31.wHour
Час. Допустимые значения для этого члена структуры 0-23.wMinute
Минута. Допустимые значения для этого члена структуры 0-59.wSecond
Секунда. Допустимые значения для этого члена структуры 0-59.wMilliseconds
Миллисекунда. Допустимые значения для этого члена структуры 0-999.Не рекомендуется, что бы Вы добавляли и вычитали значения из структуры SYSTEMTIME, чтобы получить относительное время. Вместо этого Вы должны:
Система может периодически обновлять время, синхронизируя с источником времени. Поскольку системное время, может регулироваться или вперед, или назад, не сравнивайте данные системного времени, чтобы определить истекшее время. Вместо этого используйте один из методов, рассмотренных в статье Время операционной системы Windows.
Пример ниже демонстрирует различие между значениями времени, найденными функциями GetSystemTime и GetLocalTime.
#include <windows.h> #include <stdio.h> void main() { SYSTEMTIME st, lt; GetSystemTime(&st); GetLocalTime(<); printf("The system time is: %02d:%02d\n", st.wHour, st.wMinute); printf(" The local time is: %02d:%02d\n", lt.wHour, lt.wMinute); } |
// Типовой вывод данных Системное время: 19:34 Местное время: 12:34 |
Обзор Время (операционной системы), Структуры, используемые для времени, FILETIME, FileTimeToSystemTime, GetSystemTime, ULARGE_INTEGER, SetSystemTime
Размещение и совместимость SYSTEMTIME | ||
К | Windows Vista | Да |
л | Windows XP | Да |
и | Windows 2000 Professional | Да |
е | Windows NT Workstation | Да |
н | Windows Me | Да |
т | Windows 98 | Да |
Windows 95 | Да | |
С | Windows Server 2008 | Да |
е | Windows Server 2003 | Да |
р | Windows 2000 Server | Да |
в | Windows NT Server | Да |
е | ||
р | ||
Используемая библиотека | - | |
Используемая DLL | - | |
Заголовочный файл | ||
- объявлено в | Winbase.h | |
- включено в | Windows.h | |
Unicode | Нет | |
Замечания по платформе | Не имеется |