Hilfe zum Einlesen eines Datums



  • Hallo!
    Ich hoffe, ihr könnt mir weiterhelfen.
    Das Problem ist folgendes:
    Ich will ein Datum der Form {}{tag}.{}{monat}.{}{jahr} einlesen, wobei
    {} für eine beliebige anzahl von white-spaces steht.
    Ich würde dies gerne mit scanf machen.
    beispielsweise:

    scanf("%i.%i.%i.", &a, &b, &c);
    

    Das eigentliche Problem ist, dass ich dieses Datum immer wieder eingeben kann - also bis der Benutzer EOF eingibt.
    Wenn jemand beispielsweise folgendes eingibt:
    3.4.1992.34344.4 statt 3.4.1992, dann spinnt das Programm.
    Wie kann ich also irgendwelche nach dem eigentlichen Datum folgenden Zeichen abfangen.
    Geht das irgendwie mit [^\n] oder oder sollte ich da eher mit getchar() rangehen??

    Danke im voraus!



  • immer schön zeilen lesen und die dann ohne verwirrendes scanf parsen



  • ok, das klingt gut.
    würdest du mir kurz ein beispiel geben,wie man sowas genau macht,da meine c-programmiererfahrung eher dürftier natur ist.
    beispielsweise oben genanntes datum einlesen.
    Danke!


Anmelden zum Antworten