Buongiorno, mi sono imbattuto in un problema legato a questa funzione, implementata in un programma:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <string.h>
char* data(char d[]);
int main()
{
char cal[9];
strcpy(cal, data(cal));
printf("Data:%s", cal);
}
char* data(char d[])
{
time_t rawtime;
struct tm * timeinfo;
time (&rawtime);
timeinfo = localtime (&rawtime);
strftime (d,9,"%Y%m%d",timeinfo);
return d;
};
Ho scritto questa parte del codice in un file separato, e in effetti funziona restituendo la data, ma una volta inserita in un altro programma in cui mi serve realmente non funziona, o meglio, il programma crasha in un certo punto, ma non riesco a capire il perché, rimuovendo questa funzione riprende a funzionare, potete aiutarmi???