[Per la descrizione e l'esempio di questa funzione andare su questo link. ]
data local_h(void)
{data d_1;
time_t a;
struct tm *b;
char data[20],temp[5],anno[5]=" ",mese[4]=" ",giorno[3]=" ";
char mesi[12][4]={"Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dic"};
int i;
time(&a);
b = localtime(&a);
strcpy(data,asctime(b));
for(i=0;i<4;i++)
temp[i]=data[i+4];
for(i=0;i<3;i++)
mese[i]=temp[i];
if(strcmp(mese,mesi[0])==0)
d_1.mm=1;
else if(strcmp(mese,mesi[1])==0)
d_1.mm=2;
else if(strcmp(mese,mesi[2])==0)
d_1.mm=3;
else if(strcmp(mese,mesi[3])==0)
d_1.mm=4;
else if(strcmp(mese,mesi[4])==0)
d_1.mm=5;
else if(strcmp(mese,mesi[5])==0)
d_1.mm=6;
else if(strcmp(mese,mesi[6])==0)
d_1.mm=7;
else if(strcmp(mese,mesi[7])==0)
d_1.mm=8;
else if(strcmp(mese,mesi[8])==0)
d_1.mm=9;
else if(strcmp(mese,mesi[9])==0)
d_1.mm=10;
else if(strcmp(mese,mesi[10])==0)
d_1.mm=11;
else if(strcmp(mese,mesi[11])==0)
d_1.mm=12;
for(i=0;i<3;i++)
temp[i]=data[i+8];
for(i=0;i<2;i++)
giorno[i]=temp[i];
d_1.gg=atoi(giorno);
for(i=0;i<5;i++)
temp[i]=data[i+20];
for(i=0;i<4;i++)
anno[i]=temp[i];
d_1.anno=atoi(anno);
return d_1;
}