Provided by: manpages-es_1.55-8_all bug

NOMBRE

       asctime,  ctime, gmtime, localtime, mktime - transforman fechas y horas
       binarias a ASCII

SINOPSIS

       #include <time.h>

       char *asctime(const struct tm *tm);
       char *asctime_r(const struct tm *tm, char *buf);

       char *ctime(const time_t *timep);
       char *ctime_r(const time_t *timep, char *buf);

       struct tm *gmtime(const time_t *timep);
       struct tm *gmtime_r(const time_t *timep, struct tm *result);

       struct tm *localtime(const time_t *timep);
       struct tm *localtime_r(const time_t *timep, struct tm *result);

       time_t mktime(struct tm *tm);

DESCRIPCIÓN

       La funciones ctime(), gmtime() y localtime() toman todas  un  argumento
       de  tipo  time_t  que  representa  el  tiempo  de  calendario.   Al ser
       interpretado como un valor de tiempo absoluto, representa el número  de
       segundos  transcurridos  desde  las 00:00:00 del 1 de Enero de 1970, en
       Tiempo Universal Coordinado, Coordinated Universal Time (UTC).

       Las funciones asctime() y mktime() toman un argumento que representa el
       tiempo  descompuesto,  que  es una representación separada en año, mes,
       día, etc.

       El tiempo descompuesto se guarda en una estructura tm, que se define en
       <time.h> como sigue:

              struct tm {
                      int     tm_sec;         /* segundos */
                      int     tm_min;         /* minutos */
                      int     tm_hour;        /* horas */
                      int     tm_mday;        /* día del mes */
                      int     tm_mon;         /* mes */
                      int     tm_year;        /* año */
                      int     tm_wday;        /* día de la semana */
                      int     tm_yday;        /* día del año */
                      int     tm_isdst;       /* cambio horario verano/invierno */
              };

       Los miembros de la estructura tm son:

       tm_sec El  número  de segundos, normalmente en el rango de 0 a 59, pero
              puede llegar a 61 para permitir segundos bisiestos.

       tm_min El número de minutos, en el rango de 0 a 59.

       tm_hour
              El número de horas pasada la medianoche, en el rango de 0 a  23.

       tm_mday
              El día del mes, en el rango de 1 a 31.

       tm_mon El número de meses desde Enero, en el rango de 0 a 11.

       tm_year
              El número de años desde 1900.

       tm_wday
              El número de dias desde el Domingo, en el rango  de 0 a 6.

       tm_yday
              El número de dias desde el 1 de Enero en el rango de 0 a 365.

       tm_isdst
              Un  indicador  que  dice si existe cambio horario entre verano e
              invierno para el tiempo descrito. El valor es positivo si existe
              este  cambio, cero si no lo hay, y negativo si la información no
              está disponible.

       La llamada ctime(t) es equivalente a asctime(localtime(t)).   Convierte
       el tiempo de calendario timep a una cadena de la forma

              "Wed Jun 30 21:49:08 1993\n"

       Las  abreviaturas  para  los dias de la semana son ‘Sun’, ‘Mon’, ‘Tue’,
       ‘Wed’, ‘Thu’, ‘Fri’, y ‘Sat’.  Las  abreviaturas  para  los  meses  son
       ‘Jan’,  ‘Feb’,  ‘Mar’, ‘Apr’, ‘May’, ‘Jun’, ‘Jul’, ‘Aug’, ‘Sep’, ‘Oct’,
       ‘Nov’, y ‘Dec’.  El  valor  devuelto  apunta  a  una  cadena  reservada
       estáticamente  que  puede  ser  sobreescrita por posteriores llamadas a
       cualquiera de las funciones de fecha u hora. La función también pone en
       la variable externa tzname (véase tzset(3)) información acerca del huso
       horario.  La versión reentrante ctime_r() hace lo mismo, pero  almacena
       la  cadena  en un buffer suministrado por el usuario de longitud mínima
       26. No necesita modificar tzname.

       La función gmtime() convierte el  tiempo  de  calendario  timep  a  una
       representación  descompuesta  del tiempo, expresado en Tiempo Universal
       Coordinado (UTC). Puede devolver NULL cuando el  año  no  cabe  en  una
       variable  entera.   El valor devuelto apunta a una estructura reservada
       estáticamente que puede ser sobreescrita  por  llamadas  posteriores  a
       cualquiera  de  las funciones de fecha y tiempo.  La función gmtime_r()
       hace lo mismo, pero almacena los datos en una  estructura  suministrada
       por el usuario.

       La  función  localtime()  convierte el tiempo de calendario timep a una
       representación descompuesta,  expresada  relativa  a  la  zona  horaria
       especificada por el usuario. La función actúa como si hubiera llamado a
       tzset(3) y pone en la variable externa tzname información acerca de  la
       zona  horaria  en  curso,  en  timezone  la  diferencia entre el Tiempo
       Universal Coordinado (UTC) y la hora local normal  en  segundos,  y  en
       daylight  un valor distinto de cero si las reglas del cambio horario de
       verano/invierno se aplican durante alguna  parte  del  año.   El  valor
       devuelto  apunta a una estructura reservada estáticamente que puede ser
       sobreescrita por llamadas posteriores a cualquiera de las funciones  de
       fecha  y tiempo.  La función localtime_r() hace lo mismo, pero almacena
       los datos en una estructura suministrada por el usuario.

       La función asctime() convierte el tiempo descompuesto tm a  una  cadena
       con  el  mismo  formato  que  ctime().   El valor devuelto apunta a una
       cadena  reservada  estáticamente  que  puede   ser   sobreescrita   por
       posteriores llamadas a cualquiera de las funciones de fecha u hora.  La
       función asctime_r() hace lo mismo, pero almacena la cadena en un buffer
       suministrado por el usuario de longitud mínima 26.

       La   función   mktime()   convierte   un   tiempo  descompuesto  a  una
       representación tiempo de calendario. La función hace caso omiso de  los
       contenidos  específícos  en  los  miembros  de  la estructura tm_wday y
       tm_yday y los recalcula a partir de otra información  existente  en  la
       estructura  del  tiempo descompuesto.  Si los miembros de la estructura
       están fuera de sus intervalos permitidos, serán normalizados  (del  tal
       manera  que,  por  ejemplo,  el  40  de  octubre  se  cambiará  al 9 de
       noviembre).  Al llamar a mktime()  también  se  pone  un  valor  en  la
       variable  externa  tzname con información acerca de la zona horaria. Si
       el tiempo descompuesto especificado no puede representarse como  tiempo
       de  calendario  (segundos desde la ‘Época’), mktime() devuelve el valor
       (time_t)(-1) y  no  altera  los  miembros  tm_wday  ni  tm_yday  de  la
       estructura del tiempo descompuesto.

VALOR DEVUELTO

       Cada  una  de estas funciones devuelve el valor descrito, o NULL (-1 en
       el caso de mktime()) en caso de error.

OBSERVACIONES

       Las  cuatro  funciones  acstime(),  ctime(),  gmtime()  y   localtime()
       devuelven  un puntero a datos estáticos y por tanto no son seguras para
       trabajar con hilos.  Las versiones hilo-seguro acstime_r(),  ctime_r(),
       gmtime_r()  y  localtime_r()  están  especificadas  por  SUSv2, y están
       disponibles desde la versión 5.2.5 de libc.

       La versión glibc de la estructura tm contiene campos adicionales

              long tm_gmtoff;           /* Segundos al este de UTC */
              const char *tm_tm_zone;   /* Abreviación del huso horario */

       definidos cuando se pone _BSD_SOURCE antes de incluir  <time.h>.   Esta
       es una extensión BSD, presente en 4.3BSD-Reno.

CONFORME A

       SVID 3, POSIX, BSD 4.3, ISO 9899

VÉASE TAMBIÉN

       date(1),  gettimeofday(2),  newctime(3),  time(2),  utime(2), clock(3),
       difftime(3), strftime(3), strptime(3), tzset(3)

                               13 diciembre 2001                      CTIME(3)