self-taught

time.h

time_t rawtime;
struct tm * timeinfo;
/* Ottieni l'ora in formato POSIX */
time(&rawtime);
timeinfo = localtime (&rawtime);
/* La struttura timeinfo non va deallocata (è allocata staticamente dal
sistema operativo, viene sovrascritta ad ogni invocazione */
 
/* Stampa l'ora */
// ctime() trasforma l'ora in stringa
printf("%s\n", ctime(&rawtime));
/* Formattare data/ora in stringa secondo un formato specificato */
strftime(buffer, BUFFER_SIZE, "%Y-%m-%d %H:%M:%S", timeinfo);

struct tm:

struct tm{
	int tm_sec // Seconds [0,60].
	int tm_min // Minutes [0,59].
	int tm_hour // Hour [0,23].
	int tm_mday // Day of month [1,31].
	int tm_mon // Month of year [0,11].
	int tm_year // Years since 1900.
	int tm_wday // Day of week [0,6] (Sunday =0).
	int tm_yday // Day of year [0,365].
	int tm_isdst // Daylight Savings flag.
};