Структура SYSTEMTIME (minwinbase.h)
Указывает дату и время, используя отдельные элементы для месяца, дня, года, дня недели, часа, минуты, секунды и миллисекунд. Время определяется в формате UTC или местном времени в зависимости от вызываемой функции.
Синтаксис
typedef struct _SYSTEMTIME {
WORD wYear;
WORD wMonth;
WORD wDayOfWeek;
WORD wDay;
WORD wHour;
WORD wMinute;
WORD wSecond;
WORD wMilliseconds;
} SYSTEMTIME, *PSYSTEMTIME, *LPSYSTEMTIME;
Члены
wYear
Год. Допустимые значения для этого элемента — от 1601 до 30827.
wMonth
Месяц. Этот элемент может иметь одно из следующих значений.
Значение | Значение |
---|---|
|
Январь |
|
Февраль |
|
Март |
|
Апрель |
|
Май |
|
Июнь |
|
Июль |
|
Август |
|
Сентябрь |
|
Октябрь |
|
Ноябрь |
|
Декабрь |
wDayOfWeek
День недели. Этот элемент может иметь одно из следующих значений.
Значение | Значение |
---|---|
|
Воскресенье |
|
Понедельник |
|
Вторник |
|
Среда |
|
Четверг |
|
Пятница |
|
Суббота |
wDay
День месяца. Допустимые значения для этого элемента: от 1 до 31.
wHour
Час. Допустимые значения для этого элемента — от 0 до 23.
wMinute
Минута. Допустимые значения для этого элемента — от 0 до 59.
wSecond
Секунда. Допустимые значения для этого элемента — от 0 до 59.
wMilliseconds
Миллисекунда. Допустимые значения для этого элемента : от 0 до 999.
Комментарии
Примечание
SystemTIME не проверка, чтобы узнать, является ли представленная дата реальной и допустимой датой. При работе с этим API следует обеспечить его допустимость, особенно в високосных сценариях. Дополнительные сведения см. в разделе Готовность к високосным дням .
Не рекомендуется добавлять и вычитать значения из структуры SYSTEMTIME , чтобы получить относительное время. Поэтому необходимо
- Преобразуйте структуру SYSTEMTIME в структуру FILETIME .
- Скопируйте полученную структуру FILETIME в ULARGE_INTEGER структуру.
- Используйте обычную 64-разрядную арифметическую для ULARGE_INTEGER значения.
Примеры
В следующем примере показана разница между значениями времени, получаемыми функциями 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);
}
// Sample output
The system time is: 19:34
The local time is: 12:34
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Профессиональная [классические приложения | Приложения UWP] |
Минимальная версия сервера | Windows 2000 Server [классические приложения | Приложения UWP] |
Верхняя часть | minwinbase.h (включая Windows.h) |