Einzelnen Beitrag anzeigen
Alt 15.06.2008, 12:40   #29 (permalink)
redfalcon
Hardware Freak
 

Registriert seit: 28.03.2003
Beiträge: 8.252

redfalcon kann auf vieles stolz sein
redfalcon kann auf vieles stolz sein

Standard AW: Warum eine Endlosschleife?

Hui, hat ne Weile gedauert, bis ich gerafft hab, was das Programm überhaupt machen soll. Gut, ich habs mal eben durch den Debugger gejagt. Die Abfrage endet nicht, weil c nicht -1 wird, sondern nach Abarbeiten des Strings 10 (LF, Linefeed) wird. Außerdem wird c am Ende des Programms immer 13 (CR, Carriage Return, "Zum Zeilenanfang") angehängt.
Ich hab das Programm mal soweit korrigiert, damit es den Sinn erfüllt, den du mMn bezwecken willst. Nicht schön, aber funzt.

PHP-Code:
public class Zeichen
{
    public static 
void main (String[] args) throws Exception
    
{
    
int c = 0;
    
int anzahl = 0;

    while (
c != 10)
    {

        
System.out.print ("Vor read()");
        
c = System.in.read();
        
System.out.print ("nNach read()");

        if (
c != 10)
        {
            
System.out.println ("nASCII-Code: " + c + " Zeichen: " + (char) c);
            
anzahl = anzahl + 1;
            
System.out.println ("Ende der if-Schleife.");

        }

    }
    
anzahl=anzahl-1;
    
System.out.print ("Anzahl: " + anzahl);
    }
} 

Btw, interessant, dass das Forum das "\n" nicht zu mögen scheint.
redfalcon ist offline   Mit Zitat antworten
Für diesen Beitrag bedankt sich:
Greeven (15.06.2008)