RU/2: Форум. Общение пользователей и разработчиков OS/2 (eCS). : SET TZ = ?


Список сообщений | Написать новое | Ответить на сообщение | Домой Поиск:
Предыдущее сообщение | Следующее сообщение
From : Dmitry A.Steklenev, http://glass.os2.spb.ru/
To : Alexey
Subj : SET TZ = ?

> Хочу, чтобы время, выдаваемое по time(), было правильным. Что делать?
> Где еще используется такая настройка, кроме the break и timekeeper'ов из faq? ->
> SET TZ=msk-3msd,3,-1,0,7200,10,-1,0,7200,3600
>
> Похоже, BorlandC тут отпадает сам собой.
> Что касается Watcom C, то, похоже, он предпочитает TZ в формате
> set TZ=msk-3msd,M3.5.0,M10.5.0
>
> Самое неприятное то, что
> SET TZ=msk-3msd,3,-1,0,7200,10,-1,0,7200,3600
> сбивает WC с толку, заставляя его переводить время 1 и 4 января.
>
> Может, все в морг и надо доставать некий IBM VC++?
> (шепотом: или просто подыскать себе более подходящую ось...)

Да воще с этим TZ бардак какой-то. Написал примерчик:

#include <stdio.h>
#include <time.h>

int main(void)
{
tzset();
time_t ltime;

time(<ime);
printf("Coordinated Universal Time is %s\n", asctime(gmtime(<ime)));
return 0;
}

Дык вот, VAC берет SET TZ=msk-3msd,3,-1,0,7200,10,-1,0,7200,3600.
EMX тоже. Borland C++ (под виндой) понимает только SET TZ=msk-3msd,
на остальное плюет. Больше компилеров под рукой не оказалось Ж)
В хелпах самой оси тоже описан только вариант SSS#DDD.

Вот еще бы кто сказал что-то про эти MSK и MSD -соответствуют хоть они какому нибудь стандарту и что означают. А то меня смущают рекомендации, что неважно что там написано... Может на самом деле достаточно правильно указать SSS#DDD и все? Потому как если вы еще поглядите формат TZ в разных унихах, то будут там и set TZ=msk-3msd,M3.5.0,M10.5.0 и какие-то set TZ=msk-3msd/3-5-0/10-5-0...


Mon 21 Oct 2002 21:06 Mozilla/5.0 (OS/2; U; Warp 4.5; en-US; rv:1.2b) Gecko/200210




Programmed by Dmitri Maximovich, Dmitry I. Platonoff, Eugen Kuleshov.
25.09.99 (c) 1999, RU/2. All rights reserved.
Rewritten by Dmitry Ban. All rights ignored.