La funzione mktime () in C ++ converte l'ora del calendario locale nel tempo trascorso dall'epoca e restituisce il valore come un oggetto di tipo time_t.
La funzione mktime () è definita nel file di intestazione.
prototipo di mktime ()
time_t mktime (tm * time);
La funzione mktime accetta un puntatore a un oggetto tm come argomento e restituisce il tempo trascorso da epoch come valore di tipo time_t
. I valori, time-> tm_wday e time-> tm_yday vengono ignorati.
Se il valore di time->tm_isdst
è negativo, mktime tenta di determinare se l'ora legale fosse in vigore.
Parametri mktime ()
- time: un puntatore a un oggetto tm che rappresenta l'ora del calendario locale da convertire.
mktime () Restituisce il valore
- In caso di successo, la funzione mktime () restituisce il tempo trascorso da epoch come oggetto di tipo time_t.
- In caso di fallimento restituisce -1.
Esempio: come funziona la funzione mktime ()?
#include #include using namespace std; int main () ( time_t tim; tm *ptr; int y = 2017, m = 4, d = 20; char weekday(7)(20) = ("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"); time(&tim); ptr = localtime(&tim); // tm_year is time since 1900 ptr->tm_year = y - 1900; ptr->tm_mon = m - 1; ptr->tm_mday = d; mktime (ptr); cout << "April 20, 2017 was "
When you run the program, the output will be:
April 4, 2017 was a Thursday