[C] Abbruchbedingung für while Schleife

Bexx

Verrückte Erfinderin bei Daniel Düsentrieb
Hallo :)

Ich habe eine Frage:

Wie muss ich casten, damit meine Schleife bei einem NewLineFeed abbricht!?

Ich speichere meine Werte in einen double und habe schon fast jede Möglichkeit mit casten versucht, die einfach nicht klappt... Hat jemand eine Idee was ich falsch mache?

Hier ein Codeausschnitt:

C++:
    while (1)
    {
        if (i < max)
        {
           scanf("%lf", &messwerte[i]);
           if ((char)messwerte[i] == '\n')
           {
              return 0;
           }
           i++;
        }
Hab es auch folgendermaßen versucht:
Code:
if (messwerte[i] == (char)'\n')
if ((char)messwerte[i] == (char)'\n')
if (messwerte[i] == (char)10)


Das alles geht nicht, wäre wirklich happy, wenn mir jemand sagen könnte, was ich falsch gemacht habe! Danke schonmal.
 
Hi.

Du liest mit scanf einen double ein. Dieser hat ein bestimmtes Format welches scanf akzeptiert. Jegliche Leerzeichen vor dem double Wert werden verworfen. Welchen Wert sollte denn scanf auch in dem double für ein \n Zeichen speichern? Und wozu? :confused:

Wenn du zeilenweise arbeiten willst, dann lies die Eingabe zeilenweise mit fgets ein und arbeite dann mit sscanf.

Gruß
 
Danke, das ist auf jeden Fall schonmal Hilfreich. Habe gedacht, er könnte das ganze mit einem Cast irgendwie interpretieren und deshalb die ganze Zeit da dran rumgeschraubt und versucht.

Dankeschön!
 
Zurück