Вверх ↑
Ответов: 2125
Рейтинг: 159
#1: 2007-03-14 21:15:54 ЛС | профиль | цитата
Вобщем, в каком виде выдавать дату для математических действий над ней - всё равно. Если исходить из того, что имеется в API, то хранить дату можно в том виде, в каком она передаётся через API функции, т.е.
typedef struct _SYSTEMTIME {  // st 
    WORD wYear; 
WORD wMonth;
WORD wDayOfWeek;
WORD wDay;
WORD wHour;
WORD wMinute;
WORD wSecond;
WORD wMilliseconds;
} SYSTEMTIME;
Тут вам есть и миллисекунды, и день недели. Т.е. компонент "Дата" лучше всего сделать с храненем даты в этом формате. Есть функции для получения и локального времени, и UTC (GMT).

Выдавать дату в виде числа, я считаю, лучше всего как real. SYSTEMTIME c помощью того же API переводится к FILETIME, которое по сути есть 64-битное число. Где еденица это 100 наносекунд (непонятно правда, нафига у даты файла такая точность!). Начало отсчёта 1 января 1601 года! Причём как в одну сторону, так и в другую.
карма: 1

0