In linguaggio C si può fare una cosa del genere, utilizzando la libreria time.h, ma forse esiste qualcosa di diverso per il C++ ( anche se dovrebbe compilare comunque):
#include <stdio.h>
#include <time.h>
char *mesi[] = {"Gennaio", "Febbraio", "Marzo", "Aprile", "Maggio", "Giugno",
"Luglio", "Agosto", "Settembre", "Ottobre", "Novembre", "Dicembre"};
char *giorni[] = {"Domenica", "Lunedì", "Martedì", "Mercoledì", "Giovedì", "Venerdì", "Sabato"};
int main()
{
time_t rawtime;
time (&rawtime);
struct tm* leggibile;
leggibile = localtime(&rawtime);
printf("Ora: %d:%d:%d\n",leggibile->tm_hour,leggibile->tm_min,leggibile->tm_sec);
printf("Data: %d %s %d\n",leggibile->tm_mday,mesi[leggibile->tm_mon],leggibile->tm_year+1900);
printf("Giorno della settimana: %s\n", giorni[leggibile->tm_wday]);
printf("Giorno dell'anno: %d\n", leggibile->tm_yday + 1);
if (leggibile->tm_isdst >= 0)
{ /* NB: se leggibile->tm_isdst < 0 non ci sono informazioni sull'ora legale */
printf("Ora legale: %s\n", (leggibile->tm_isdst)? "attiva" : "non attiva");
}
return 0;
}