Time.h
Da Wikipedia, l'enciclopedia libera
time.h è l'header file della libreria standard del C che fornisce un accesso standardizzato alle funzioni di acquisizione e manipolazione del tempo. Fornisce supporto per ottenere il tempo, trasformarlo in diversi formati e convertirlo in stringa.
Funzioni
Riepilogo
Prospettiva
Tipologia | Nome | Descrizione |
---|---|---|
Manipolazione
dell'ora |
difftime |
Calcola la differenza in secondi di due valori time_t |
time |
Restituisce l'ora del sistema sotto forma di time_t in secondi (che corrispondono solitamente ai secondi dall'epoca, tipicamente dall'epoca Unix).
Il valore dell'epoca dipende dal sistema operativo. Vengono spesso usati il 1970 e il 1900 come epoca | |
clock |
Restituisce il numero di tick passati a partire dal lancio del programma | |
timespec_get (C11) |
Restituisce la data in secondi e millisecondi da una base | |
Conversione di
formati |
asctime |
Converte una struct tm in una rappresentazione testuale (obsoleta) |
ctime |
Converte un valore time_t in una rappresentazione testuale | |
strftime |
Converte una struct tm in una rappresentazione testuale personalizzata | |
strptime |
Converte una stringa contenente l'ora in una struct tm | |
wcsftime |
Converte una struct tm in una rappresentazione testuale personalizzata usando wide string | |
gmtime |
Converte un valore time_t in ora basata sul calendario espressa come ora UTC | |
localtime |
Converte un valore time_t in ora basata sul calendario espressa come ora locale | |
mktime |
Converte l'ora basato sul calendario in time_t |
Costanti
Nome | Descrizione |
---|---|
CLOCKS_PER_SEC | Definisce il numero di "tick" della CPU che trascorrono in un secondo. clock()/CLOCKS_PER_SEC risulta quindi essere un tempo espresso in secondi. |
Tipi di dato
Nome | Descrizione |
---|---|
clock_t | Tipo di dato restituito da clock() . Generalmente definito come un long int. |
time_t | Tipo di dato restituito da time() , rappresenta un tempo di calendario. Generalmente definito come un long int. |
struct tm | Struttura usata e restituita da asctime() , gmtime() , localtime() e mktime() . |
struct timespec |
Struttura usata da timespec_get() . Contiene una data composta dal numero di secondi e nanosecondi. |
Esempio
Il programma in C qui sotto stampa sullo standard output l'ora corrente:
#include <time.h>
#include <stdlib.h>
#include <stdio.h>
int main(void)
{
time_t ora_corrente;
char* stringa_ora_corrente;
/* Otteniamo l'ora corrente. */
ora_corrente = time(NULL);
if (ora_corrente == ((time_t)-1))
{
(void) fprintf(stderr, "Errore nell'ottenimento dell'ora corrente.\n");
exit(EXIT_FAILURE);
}
/* Convertiamola nell'ora locale. */
stringa_ora_corrente = ctime(&ora_corrente);
if (stringa_ora_corrente == NULL)
{
(void) fprintf(stderr, "Errore nella conversione in ora locale.\n");
exit(EXIT_FAILURE);
}
/* Stampiamola sullo standard output. ctime() ha già aggiunto il carattere di ritorno a capo. */
(void) printf("L'ora corrente è %s", stringa_ora_corrente);
exit(EXIT_SUCCESS);
}
L'output è il seguente:
L'ora corrente è Sat Sep 16 18:24:29 2023
Altri progetti
Collegamenti esterni
- (EN) time.h da The Open Group Base Specifications Issue 7
- (EN) The GNU C Library - Date and Time, su chemie.fu-berlin.de. URL consultato il 3 luglio 2012 (archiviato dall'url originale il 26 dicembre 2012).
- (EN) C Time Library, su cplusplus.com. URL consultato il 3 luglio 2012 (archiviato dall'url originale il 4 luglio 2012).
- 69.16 File «time.h» da Appunti di informatica libera
Wikiwand - on
Seamless Wikipedia browsing. On steroids.