@Linda-chan

Linda-chan

Линда Кайе
Linda-chan

Дата рождения: 01.11.1983

Тотальная неудачница и убийца жёстких дисков. Самая большая поклонница Ариэль. Член ордена Вселенского тормоза имени Осаки-сан. Любительница каваййных переднеприводных машинок. Суккуб на полставки. Когти прилагаются.

https://www.lindachan.net

10 я читаю 59 меня читают
15077 постов
25807 комментариев
Linda-chan
21 Dec 2021

UNIX время – это число с плавающей точкой, в UTC (нулевой часовой пояс), без дополнительных секунд. Всё верно? Запуталась уже =_=

21 Dec 2021

Вроде бы UTC сам по себе содержит дополнительные секунды, но я могу ошибаться

21 Dec 2021

Но в целом да. Это количество секунд, прошедших с 1970-01-01 00:00:00+00:00

#zmucy/2 в ответ на /1
21 Dec 2021

Если именно секунд, то должно быть целое число, но мне попадались варианты с точкой для милисекунд. И в Цэ вроде как оно с точкой.

#zmucy/3 в ответ на /2
21 Dec 2021

Linda-chan, нет, количество секунд это не обязательно целое число. Секунда не есть квант времени

#zmucy/4 в ответ на /3
21 Dec 2021

Сколько у тебя секунд прошло с 1970-01-01 00:00:00.123+00:00 до 1970-01-01 00:00:00.654+00:00
Ответ: 0.531 секунда

#zmucy/6 в ответ на /3
21 Dec 2021

В JS getDate() возвращает целое число в миллисеках. Это надо делить на 1000, само собой

#zmucy/7 в ответ на /3
21 Dec 2021

Допустим, тип by design округляет это значение.

#zmucy/8 в ответ на /6
21 Dec 2021

Не с плавающей, целое. Раньше было 32 бита, сейчас повсеместно 64.

21 Dec 2021

Такие времена выражаются не обычной time_t, а структурой из двух целых, секунды и милли/наносекунды (struct timeval/timespec).

#zmucy/11 в ответ на /4
22 Dec 2021

stager, ф смысли - целая часть - это день с 1899 года (кажеца), а дробная - это дробь суток этого дня

#zmucy/13 в ответ на /12
22 Dec 2021

Вот записи с точкой — они получаются не из time_t, а из:

struct timeval {
    time_t      tv_sec;     /* seconds */
    long int tv_usec;    /* microseconds */
};

и из:

struct timespec {
    time_t      tv_sec;     /* seconds */
    long int tv_nsec;    /* nanoseconds */
};

В зависимости от того, насколько тебе точное нужно время, дёргаешь соответствующую функцию, для time_t у тебя функция time_t time (time_t *result), если timeval, то функция int gettimeofday (struct timeval *tp, void *tzp), и так далее.

Вот тут краткий референс по типам: https://www.gnu.org/softwar...node/Time-Types.html
А тут по функциям: https://www.gnu.org/softwar...etting-the-Time.html

#zmucy/17 в ответ на /14

Добавить пост

Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Для форматирования текста используется Markdown.