Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - Prüfen von Eingaben in Konsolenanwendung


Calculon - Sa 21.10.06 15:15
Titel: Prüfen von Eingaben in Konsolenanwendung
Hi allerseits,
hab' mal wieder 'ne Frage bzgl. Konsolenanwendungen. Es gibt viele Möglichkeiten wie man bei (Visual) Delphi überprüfen kann, ob in einem Edit-Feld, in dem ein Integer-Wert stehen soll, auch wirklich ein Integer-Wert steht.
Wie geht das bei einer Konsolenanwendung, für folgenden Fall:


Delphi-Quelltext
1:
2:
writeln('Bitte einen gültigen Integer-Wert eingeben: ');
readln(intvalue); // var intvalue : integer;


Wenn nun Buchstaben oder floating-Werte eingegeben werden, schmeißt mich das Programm natürlich raus. Das will ich unterbinden.

Gruß


Martok - Sa 21.10.06 15:55

Du kannst mit Readln(StringVal) einlesen und dann mit Val konvertieren:


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
var str:string;
    i,e:integer;

begin
  Readln(str);
  Val(Str,i,e);
  if e>0 then
    //hau den User....
  else
    MachWasMit(i);
end.


Calculon - Sa 21.10.06 16:08

Funktioniert wunderbar!

Vielen Dank!

Gruß