Datumsangaben vergleichen



  • Hallo,

    wie vergleiche ich am besten 2 Datumsangaben mit if-Anweisungen auf grösser bzw. kleiner/gleich ?

    dodger



  • Wenn du ohne Betriebssystemfunktionen auskommen willst folgender Vorschlag

    unsigned lont int date1;
    unsigned lont int date2;
    date1=tage1+monate1*100+jahre1*100*100;
    date2=tage2+monate2*100+jahre2*100*100;
    
    if (date2 <date1)
    ...
    

    Wenn du das DAtum DIN normiert (YYYYMMDD) vorliegen hast reicht

    if (stricmp(date1,date2))
    {
    ...
    }
    


  • danke ! wie kommst du auf die berechnung bei der ersten lösung ?



  • die Tage liegen zwischen 0 und 31 wenn ich jetzt die monate mit 100 multipliziere ändern sie nicht an den Tagen das gleiche gilt für die Jahre.
    Mann könnte es finer machen in dem man die Monate mit 31 und die Jahre mit 31*12 multiplizieret. Wenn man die Werte mit 100^n multiploziert kann man das datum
    in printf("%i",datei) sogar einigermaßen lesen.

    Und wie man as strings zahlen mit atoi oder sscanf macht weist du wahrscheinlich.


Anmelden zum Antworten