ho due variabili d1, d2 di tipo Data (vedi sopra). è lecito scrivere d1>d2 (=, >) per verificare se la data d1 è antecedente a d2?
tipo posso scrivere:
?codice:if(d1>d2){ printf("La data d1 è antecedente a d2"); }
grazie!
ho due variabili d1, d2 di tipo Data (vedi sopra). è lecito scrivere d1>d2 (=, >) per verificare se la data d1 è antecedente a d2?
tipo posso scrivere:
?codice:if(d1>d2){ printf("La data d1 è antecedente a d2"); }
grazie!
penso di no,devi comunque fare dei controlli tra i valori interni delle due struct
Sarebbe lecito se il C consentisse l'overloading degli operatori come in C++: in quel caso potresti "istruire" il compilatore su come comportarsi con gli operatori relazionali con dati non numerici, ma poiché il C non lo permette non lo puoi fare, devi definire una funzione di confronto.
every day above ground is a good one
invece per stampare d1 con printf si può stampare direttamente dando la variabile d1 o devo stampare per forza di campo in campo (anno, giorno,...)?
Stessa cosa, devi stampare campo per campo. Puoi sempre definire una funzione per farlo, in maniera tale da evitare di riscrivere tutta la stampa ogni volta.
Comunque se hai bisogno di gestire le date puoi provare a dare uno sguardo alla libreria time.
every day above ground is a good one
Giorno+Mese+Anno
Oppure potresti utilizzare memcmp