C funzioni di data e ora - C date and time functions

Le funzioni di data e ora C sono un gruppo di funzioni nella libreria standard del linguaggio di programmazione C che implementano operazioni di manipolazione di data e ora. Forniscono supporto per l' acquisizione dell'ora , la conversione tra i formati di data e l'output formattato in stringhe.

Panoramica delle funzioni

Le operazioni di data e ora C sono definite nel time.h file dictime intestazione ( intestazione in C++ ).

Identificatore Descrizione

Manipolazione del tempo
difftime calcola la differenza in secondi tra due time_tvalori
time restituisce l' ora corrente del sistema come time_tvalore, numero di secondi, (che di solito è il tempo trascorso da un'epoca , tipicamente l' epoca Unix ). Il valore dell'epoca dipende dal sistema operativo; 1900 e 1970 sono spesso usati. Vedi RFC 868.
clock restituisce un conteggio di tick del processore associato al processo
timespec_get (C11) restituisce un orario di calendario basato su una base di tempo

Conversioni di formato
asctime converte un struct tmoggetto in una rappresentazione testuale (deprecato)
ctime converte un time_tvalore in una rappresentazione testuale
strftime converte un struct tmoggetto in una rappresentazione testuale personalizzata
wcsftime converte un struct tmoggetto in una rappresentazione testuale a stringa larga personalizzata
gmtime converte un time_tvalore in tempo di calendario espresso come Coordinated Universal Time
localtime converte un time_tvalore nell'ora del calendario espressa come ora locale
mktime converte l'ora del calendario in un time_tvalore.
costanti CLOCKS_PER_SEC numero di cicli di clock del processore al secondo
TIME_UTC base dei tempi per UTC
tipi struct tm tipo di tempo del calendario suddiviso : anno, mese, giorno, ora, minuto, secondo
time_t tipo di tempo aritmetico (tipicamente tempo dall'epoca)
clock_t tipo di tempo di esecuzione del processo
timespec tempo con secondi e nanosecondi

I timespectipi e relativi sono stati originariamente proposti da Markus Kuhn per fornire una varietà di basi temporali, ma solo è TIME_UTCstato accettato. Le funzionalità sono state, tuttavia, aggiunte a C++ nel 2020 in std::chrono.

Esempio

Il seguente codice sorgente C stampa l'ora corrente nel flusso di output standard .

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

int main(void)
{
    time_t current_time;
    char* c_time_string;

    /* Obtain current time. */
    current_time = time(NULL);

    if (current_time == ((time_t)-1))
    {
        (void) fprintf(stderr, "Failure to obtain the current time.\n");
        exit(EXIT_FAILURE);
    }

    /* Convert to local time format. */
    c_time_string = ctime(&current_time);

    if (c_time_string == NULL)
    {
        (void) fprintf(stderr, "Failure to convert the current time.\n");
        exit(EXIT_FAILURE);
    }

    /* Print to stdout. ctime() has already added a terminating newline character. */
    (void) printf("Current time is %s", c_time_string);
    exit(EXIT_SUCCESS);
}

L'uscita è:

Current time is Thu Sep 15 21:18:23 2016

Guarda anche

Riferimenti

link esterno