asctime, asctime_s
|
Definido en el encabezado
<time.h>
|
||
| (1) | ||
|
char
*
asctime
(
const
struct
tm
*
time_ptr
)
;
|
(hasta C23) | |
|
[
[
deprecated
]
]
char
*
asctime
(
const
struct
tm
*
time_ptr
)
;
|
(desde C23) | |
|
errno_t asctime_s
(
char
*
buf, rsize_t bufsz,
const
struct
tm
*
time_ptr
)
;
|
(2) | (desde C11) |
-
Www- abreviatura inglesa de tres letras del día de la semana desde time_ptr - > tm_wday , uno deMon,Tue,Wed,Thu,Fri,Sat,Sun. -
Mmm- abreviatura inglesa de tres letras del nombre del mes desde time_ptr - > tm_mon , uno deJan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec. -
dd- día del mes de 2 dígitos desde timeptr - > tm_mday como si fuera impreso por sprintf usando % 2d . -
hh- hora de 2 dígitos desde timeptr - > tm_hour como si fuera impreso por sprintf usando % .2d . -
mm- minuto de 2 dígitos desde timeptr - > tm_min como si fuera impreso por sprintf usando % .2d . -
ss- segundo de 2 dígitos desde timeptr - > tm_sec como si fuera impreso por sprintf usando % .2d . -
yyyy- año de 4 dígitos desde timeptr - > tm_year + 1900 como si fuera impreso por sprintf usando % 4d .
|
Esta función está obsoleta y no debe usarse en código nuevo.
|
(desde C23) |
-
- buf o time_ptr es un puntero nulo
- bufsz es menor que 26 o mayor que RSIZE_MAX
- no todos los miembros de * time_ptr están dentro de sus rangos normales
- el año indicado por time_ptr - > tm_year es menor que 0 o mayor que 9999.
-
Como con todas las funciones con verificación de límites,
asctime_ssolo está garantizado que esté disponible si __STDC_LIB_EXT1__ está definido por la implementación y si el usuario define __STDC_WANT_LIB_EXT1__ como la constante entera 1 antes de incluir <time.h> .
Contenidos |
Parámetros
| time_ptr | - | puntero a un objeto tm que especifica el tiempo a imprimir |
| buf | - | puntero a un búfer proporcionado por el usuario de al menos 26 bytes de longitud |
| bufsz | - | tamaño del búfer proporcionado por el usuario |
Valor de retorno
asctime
y
ctime
, y puede ser sobrescrita en cada invocación de cualquiera de esas funciones.
Notas
asctime
devuelve un puntero a datos estáticos y no es seguro para hilos. POSIX marca esta función como obsoleta y recomienda
strftime
en su lugar. El estándar C también recomienda
strftime
en lugar de
asctime
y
asctime_s
porque
strftime
es más flexible y sensible a la configuración regional.
POSIX limita los comportamientos indefinidos solo a cuando la cadena de salida sería más larga de 25 caracteres, cuando timeptr - > tm_wday o timeptr - > tm_mon no están dentro de los rangos esperados, o cuando timeptr - > tm_year excede INT_MAX - 1990 .
Algunas implementaciones manejan timeptr - > tm_mday == 0 como si significara el último día del mes anterior.
Ejemplo
Salida posible:
Tue May 26 21:51:50 2015 Tue May 26 21:51:50 2015
Referencias
- Estándar C17 (ISO/IEC 9899:2018):
-
- 7.27.2.1 La función asctime (p: 287)
-
- K.3.8.2.1 La función asctime_s (p: 453-454)
- Estándar C11 (ISO/IEC 9899:2011):
-
- 7.27.2.1 La función asctime (p: 392-393)
-
- K.3.8.2.1 La función asctime_s (p: 624-625)
- Estándar C99 (ISO/IEC 9899:1999):
-
- 7.23.3.1 La función asctime (p: 341-342)
- Estándar C89/C90 (ISO/IEC 9899:1990):
-
- 4.12.3.1 La función asctime
Véase también
|
(obsoleto en C23)
(C11)
|
convierte un objeto
time_t
a una representación textual
(función) |
|
convierte un objeto
tm
a una representación textual personalizada
(función) |
|
|
Documentación de C++
para
asctime
|
|