Aiuto per l'uso della libreria Time

riciweb:
Esattamente non capisco la riga:

time_t t = processSyncMessage();

"time_t" da quello che mi dici dovrebbe essere una unsigned long, ma con la "t" davanti cosa significa?
Foste che sia "time_t" che "t" sono uguali a "processSyncMessage()" ?

La prima cosa per capire una libreria è.... studiarsela :wink:
Se avessi aperto tutti i file, avresti trovato in time.h la seguente riga:

typedef unsigned long time_t;

Come vedi, l'autore ridefinisce un tipo personale time_t dichiarandolo di tipo unsigned long.
A questo punto, time_t t significa esattamente unsigned long t.

All'inizio: time_t processSyncMessage() :astonished:

poi: time_t pctime = 0; ma "pctime" non è definita da nessuna parte, appare all'improvviso e non capisco :blush:

Come sopra. time_t è un nuovo tipo per cui può essere usato per tipizzare una variabile o il tipo di dati restituito da una funzione.

ed ancora: pctime = (10 * pctime) + (c - '0') ; // convert digits to a number Sempre più oscuro sommo dei numeri a dei caratteri? :cold_sweat:

Quando usi le virgolette singole, cioè ', il carattere contenuto al loro interno viene interpretato secondo il suo codice ASCII. '0' equivale al valore 48 perché il carattere 0 equivale al valore ASCII 48.

Quindi setTime(t); e setTime(hr,min,sec,day,mnth,yr); si equivalgono????

Non si equivalgono. Accettano 2 serie di parametri differenti. Se hai il timestamp, puoi passargli quello e la funzione estrarrà l'anno, il mese, il giorno, l'ora eccc.... da esso. Se hai i dati già calcolati, puoi passargli quelli.

Ragazzi, sono veramente sempre più confuso, insieme a mechrekt abbiamo scritto 1800 righe di codice "funzionante" ed ora almeno per ciò che mi riguarda, mi domando come ci sia riuscito... =( =( =( =(

Veramente un grazie di cuore a tutti per l'aiuto che mi state dando.

Riccardo

Piccola considerazione personale. Ti mancano le basi del linguaggio. Non puoi pensare di fare qualcosa di più complesso senza avere un minimo di conoscenze del C. Ti consiglio di scaricarti una di quelle guide gratuite online in italiano e di leggertela bene :wink: