Problem mir wiederholter Ausgabe eines Strings



  • Ich habe ein kleines Unterprogramm geschrieben, was auch wunderbar funktioniert, außer ich mache eine falsche Eingabe.
    Dann erscheint zwar die Fehlermeldung und die Einagbe wird auch wiederholt, doch die Aufforderungsmeldung [printf("%s", msg);] wird nicht wiederholt.
    Ich hab schon alles mögliche ausprobiert Kann mir vielleicht jemand einen Tipp geben?

    double readdouble(char msg[])
    {
     double zahl;
     int n, c;
    
       do
       {
          printf("%s", msg);
          n = scanf("%lf", &zahl);
          while ((c = getchar()) != '\n')
             if(c != ' ' || c != '\t')
                n = 0;
          if (n != 1)
             printf ("Eingabefehler!\n");
      } while (n != 1);
    
     return zahl;
    }
    


  • Hast du auch schon fflush(stdout) nach dem printf() ausprobiert?



  • debuggen wird das problem sicher loesen


Anmelden zum Antworten