asctime, _wasctime

Converter uma estrutura de hora tm para uma cadeia de caracteres. Versões mais seguras dessas funções estão disponíveis; confira asctime_s, _wasctime_s.

Sintaxe

char *asctime(
   const struct tm *timeptr
);
wchar_t *_wasctime(
   const struct tm *timeptr
);

Parâmetros

timeptr
Estrutura de hora/data.

Valor retornado

asctime retorna um ponteiro para o resultado de cadeia de caracteres; _wasctime retorna um ponteiro para o resultado de cadeia de caracteres largos. Não há valor de retorno de erro.

Comentários

Versões mais seguras dessas funções estão disponíveis; confira asctime_s, _wasctime_s.

A função asctime converte uma hora armazenada como uma estrutura para uma cadeia de caracteres. O timeptr valor é normalmente obtido de uma chamada para gmtime ou localtime, que retornam um ponteiro para uma tm estrutura, definida em TIME.H.

Membro do timeptr Valor
tm_hour Horas desde a meia-noite (0 a 23)
tm_isdst Positivo se o horário de verão estiver em vigor; 0 se o horário de verão não estiver em vigor; negativo se o status do horário de verão for desconhecido. A biblioteca em tempo de execução C presume as regras dos Estados Unidos para implementar o cálculo de DST (horário de verão).
tm_mday Dia do mês (1 a 31)
tm_min Minutos após a hora (0 a 59)
tm_mon Mês (0 a 11; janeiro = 0)
tm_sec Segundos após o minuto (0 a 59)
tm_wday Dia da semana (0 a 6; domingo = 0)
tm_yday Dia do ano (0 a 365; 1º de janeiro = 0)
tm_year Ano (ano atual menos 1900)

Para obter informações sobre como configurar a hora local, consulte as timefunções , _ftimee localtime . Para obter informações sobre como definir o ambiente de fuso horário e as variáveis globais, consulte a _tzset função.

O resultado da cadeia de caracteres produzido por asctime contém exatamente 26 caracteres e tem o formato Wed Jan 2 02:03:55 1980\n\0. Um relógio de 24 horas é usado. Todos os campos têm uma largura constante. O caractere de nova linha e o caractere nulo ocupam as duas últimas posições da cadeia de caracteres. asctime usa um único buffer alocado estaticamente para armazenar a cadeia de caracteres de retornada. Cada chamada para essa função destrói o resultado da chamada anterior.

_wasctime é uma versão de caractere largo de asctime, e se comporta de forma idêntica a asctime.

Essas funções validam seus parâmetros. Se timeptr for um ponteiro nulo ou se contiver valores fora do intervalo, o manipulador de parâmetro inválido será invocado, conforme descrito em Validação de parâmetro. Se a execução puder continuar, a função retornará NULL e definirá errno como EINVAL.

Por padrão, o estado global dessa função tem como escopo o aplicativo. Para alterar esse comportamento, confira Estado global no CRT.

Mapeamento de rotina de texto genérico

Rotina TCHAR.H _UNICODE e _MBCS não definidos _MBCS definido _UNICODE definido
_tasctime asctime asctime _wasctime

Requisitos

Rotina Cabeçalho necessário
asctime <time.h>
_wasctime <time.h> ou <wchar.h>

Exemplo

Este programa coloca a hora do sistema no inteiro aclocklongo, traduz-o na estrutura newtimee, em seguida, converte-o em forma de string para saída usando a asctime função.

// crt_asctime.c
// compile with: /W3

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

int main( void )
{
    struct tm   *newTime;
    time_t      szClock;

    // Get time in seconds
    time( &szClock );

    // Convert time to struct tm form
    newTime = localtime( &szClock );

    // Print local time as a string.
    printf_s( "Current date and time: %s", asctime( newTime ) ); // C4996
    // Note: asctime is deprecated; consider using asctime_s instead
}
Current date and time: Sun Feb  3 11:38:58 2002

Confira também

Gerenciamento de tempo
ctime, _ctime32, _ctime64, _wctime, _wctime32, , _wctime64
_ftime, _ftime32, _ftime64
gmtime, _gmtime32, _gmtime64
localtime, _localtime32, _localtime64
time, _time32, _time64
_tzset
asctime_s, _wasctime_s