| CTIME(3) | Linux Programmer's Manual | CTIME(3) |
asctime, ctime, gmtime, localtime, mktime - convertem datas e horas binárias para ASCII
#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;
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
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.
SVID 3, POSIX, BSD 4.3, ISO 9899
date(1), gettimeofday(2), time(2), tzset(3), difftime(3), strftime(3), newctime(3)
Paulo César Mendes <drpc@ism.com.br> (tradução) xxxxxxxxxxxxxxxxxxxxxxxxx <xxx@xxxxxx.xxx.xx> (revisão)
| April 26, 1996 | BSD |