Einzelnen Beitrag anzeigen
Alt 10.06.2008, 08:38   #4 (permalink)
EoN
Kaffeejunkie
 
Benutzerbild von EoN
 

Registriert seit: 01.05.2002
Beiträge: 5.035

EoN ist ein wunderbarer AnblickEoN ist ein wunderbarer AnblickEoN ist ein wunderbarer AnblickEoN ist ein wunderbarer AnblickEoN ist ein wunderbarer AnblickEoN ist ein wunderbarer AnblickEoN ist ein wunderbarer AnblickEoN ist ein wunderbarer Anblick

Standard AW: Warum eine Endlosschleife?

Zitat:
Zitat von bigfoot996 Beitrag anzeigen
Hi, ich bin jetzt nich so der ultra programmer, gleich gar nich in Java, aber ich hoffe mal ich kann dir helfen:

Eine While Schleife ist eine sogenannte "Kopfgesteuerte Schleife", d.h. die Schleife überprüft erst jedes mal die Bedinngung bevor es eigentlich losgeht. In deinem Fall wird das aber nich passieren, da deine variable "c" immer ungleich -1 sein wird, daher springt er gar nich in den 2. Teil rein sondern macht solange den 1. bis c mal verändert werden würde.


while (c != -1) wird also immer true sein, weil c nie verändert wird.

Hoffe das is richtig und verständlich.

MfG
bigfoot996
Das stimmt so leider nicht.
C wird genau hier " c = System.in.read();" überschrieben.
Das mit der kopfgesteuerten Schleife hat dann den Einfluss, dass man in die Schleife mindestens einmal hinein gelangt und diese dann frühestens nach dem ersten Durchlauf terminiert.

Dass bei Strg + z ein -1 zurückgegeben wird wundert mich jetzt doch ein wenig. Hast Du es denn mal mit Strg + c probiert? Das ist normalerweise die Abbruchstastenkombination von Konsolenanwendungen und könnte evtl einen Fehlercode in der Art von -1 werfen.
EoN ist offline   Mit Zitat antworten