CTIME(3) | Linux Programmer's Manual | CTIME(3) |
NOME¶
asctime, ctime, gmtime, localtime, mktime - convertem datas e horas binárias para ASCII
SINOPSE¶
#include <time.h> char *asctime(const struct tm *timeptr); char *ctime(const time_t *timep); struct tm *gmtime(const time_t *timep); struct tm *localtime(const time_t *timep); time_t mktime(struct tm *timeptr); extern char *tzname[2]; long int timezone; extern int daylight;
DESCRIÇÃO¶
As funções ctime(), gmtime() e localtime() recebem um argumento tipo time_t, que representa um ponto no tempo. Quando interpretado como um valor absoluto, representa o número de segundos desde as 00:00:00 de 1 de janeiro de 1970 (Hora Universal Sincronizada - UTC).
As funções asctime() e mktime() recebem um argumento que representa um instante definido em termos de ano, mês, dia, etc. Este argumento é uma struct tm (definida em <time.h>) que contém:
struct tm { int tm_sec; /* segundos */ int tm_min; /* minuto */ int tm_hour; /* horas */ int tm_mday; /* dia do mês */ int tm_mon; /* mês */ int tm_year; /* ano */ int tm_wday; /* dia da semana */ int tm_yday; /* dia do ano */ int tm_isdst; /* horário de verão */ };
Os componentes do struct tm são
- tm_sec
- Segundos após o minuto. Normalmente de 0 a 59, mas podendo chegar a 61 no caso de um segundo ser acrescentado.
- tm_min
- Minutos depois da hora. De 0 a 59.
- tm_hour
- Horas após a meia noite. De 0 a 23.
- tm_mday
- Dia do mês. De 1 a 31.
- tm_mon
- Meses desde janeiro. De 0 a 11.
- tm_year
- Anos desde 1900.
- tm_wday
- Dias de semana desde domingo. De 0 a 6.
- tm_yday
- Dias desde 1 de janeiro. De 0 a 365.
- tm_isdst
- Um flag que indica se se está em vigência do horário de verão. É um valor positivo se estiver, zero se não estiver e negativo se esta informação não estiver disponível.
A função ctime() converte timep numa string no formato
As abreviaturas dos dias da semana são `Sun', `Mon', `Tue', `Wed', `Thu', `Fri' e `Sat',e as dos meses são `Jan', `Feb', `Mar', `Apr', `May', `Jun', `Jul', `Aug', `Sep', `Oct', `Nov' e `Dec'. O valor retornado aponta para uma string alocada estaticamente, e que pode ser sobrescrita por chamadas subseqüentes a quaisquer das funções de data e hora. A função também coloca informação sobre o fuso horário atual na variável externa tzname.
A função gmtime() converte o instante timep para a representação detalhada do UTC.
A função localtime() converte o instante timep para a representação detalhada UTC, mas corrigida para o fuso horário do usuário. Esta função coloca informações de fuso horário na variável externa tzname, a diferença entre a UTC e a hora local em segundos em timezone e um valor diferente de zero em daylight se o horário de verão estiver em vigor.
A função asctime() converte o valor de tempo timeptr para uma string com o mesmo formato que ctime(). O valor retornado aponta para uma string alocada estaticamente que pode ser sobrescrita por chamadas subseqüentes a quaisquer das funções de data e tempo.
A função mktime() converte uma struct de tempo detalhada, definida como hora local, para um ponto no tempo. Esta função ignora tm_wday e tm_yday, recalculando-os a partir dos outros dados no struct. Os membros serão recalculados se excederem seus valores máximos (ex. 40 de outubro mudará para 9 de novembro). Uma chamada a mktime() também colocará informações sobre o fuso horário em tzname. Se o tempo especificado não puder ser representado no calendário (em segundos desde a Época), mktime() retornará (time_t)(-1) sem alterar os componentes tm_wday e tm_yday do struct.
DE ACORDO COM¶
SVID 3, POSIX, BSD 4.3, ISO 9899
VER TAMBÉM¶
date(1), gettimeofday(2), time(2), tzset(3), difftime(3), strftime(3), newctime(3)
TRADUZIDO POR LDP-BR em 21/08/2000.¶
Paulo César Mendes <drpc@ism.com.br> (tradução) xxxxxxxxxxxxxxxxxxxxxxxxx <xxx@xxxxxx.xxx.xx> (revisão)
April 26, 1996 | BSD |