Überprüfung Art des Eintrags
-
Hallo!
Ich bin Anfänger in C.
Meine Frage:
Ich muss eine Datei auslesen, in der hauptsächlich Integer-Werte stehen. Gelegentlich steht eine Zahl in eckigen Klammern, die dann beim Einlesen bzw. beim späteren Ausgeben übersprungen werden soll. Wie kann ich bereits beim Einlesen überprüfen, ob der Eintrag ein int-Wert oder ein Sonderzeichen ist?Vielen Dank!
-
Du kannst per getc() jedes Zeichen einzeln einlesen und dann von Hand verarbeiten. Alternativ kannst du auch die Rückgabe von fscanf() auswerten, um ungültige Werte zu überspringen:
while(!feof(datei)) { int ret = fscanf(datei,"%d",&zahl); if(ret==0)//Eingabefehler - da war keine Zahl { ...//hier kannst du den Fehlwert überspringen oder genauer untersuchen continue; } ...//reguläre Verarbeitung der (gültigen) Werte }
-
Vielen Dank! Das funktioniert super!