Originariamente inviato da francescoprogc
credo di non poter utilizzare la funzione gmtime perkè il mio input è una data espressa in secondi dal 1/1/1970....credo sia obbligato ad utilizzare la funzione ctime
Non è che sei obbligato .... dipende da cosa devi fare. Partiamo dal fatto che se hai i secondi trascorsi dalla "epoch" (la solita data di inizio del 1970), allora hai un 'time_t'. Con un valore di questo tipo puoi fare diverse cose:
- passarlo direttamente alla ctime() per avere una rappresentazione testuale (il cui formato però è fisso)
- passarlo a gmtime()/localtime() per avere una struttura struct tm con i valori separati.

Oppure puoi passare a strftime() una struttura struct tm per avere una rappresentazione testuale nel formato che preferisci.

Originariamente inviato da francescoprogc
Ora ho il problema inverso...
come faccio a partire da una stringa GG/MM/YYYY hh:mm:ss ad ottenere la data espressa in secondi?????
Sorpresa .... non c'è una funzione standard per fare questo! Analizza per conto tuo la stringa, ricerca i vari separatori nella stringa (strchr, strtok, quello che vuoi), converti i numeri come vuoi (atoi o altro) o magari tutto questo con sscanf e poi riempi una struttura struct tm e la converti in time_t, se serve.

Benvenuto nella libreria standard del "C" ... questo è tutto ciò che ti offre (e onestamente parlando, è molto poco).