Funzione che restituisce data Linguaggio C.

di il
1 risposte

Funzione che restituisce data Linguaggio C.

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???

1 Risposte

  • Re: Funzione che restituisce data Linguaggio C.

    Ma devi farci vedere il codice che crasha non quello che funziona.

    E comunque il codice va sempre tra tag CODE altrimenti non si capisce nulla.

    P.S. In ogni caso strcpy(cal, data(cal)); non è necessario dato che la funzione scrive già in cal. Quindi ti basta

    data(cal);

    e la funzione può essere void (quindi senza return)

    Ovviamente questa NON è la soluzione al crash, che si vedrà solo dopo che mostrerai il codice che ha il problema.
Devi accedere o registrarti per scrivere nel forum
1 risposte