cin (eingabe von double und enter)



  • hallo,

    ich weiss nicht mehr weiter mit diesem (relativ) billigen Problem.
    Ich will die Eingabe von einer double variablen ermöglichen. Gleichzeitig soll aber das programm bei einem (alleinigem) Druch auf die Entertaste zu beenden sein.
    Also zahl enter -> mit zahl was machen und programm beendnen
    nur enter -> programm beenden. Irgendwie bekomm ichs nicht hin

    cin.getline hat nicht geklappt.
    cin geht nicht (programm wird erst fortgesetzt, nachdem man ein zeichen
    eingegeben hat)

    cin >> string1;
    if (string1 == "" /*oder*/ '\0' /*oder*/ '\n') //geht alles nicht else
    

    hilfe!



  • willst du jetzt den logischen "ODER" Operator wissen?
    der lautet:
    ||



  • neeeeeee! 😃
    ich will wissen, wie ich sowohl eine zahl + enter als auch nur enter eingeben kann und auch feststellen ob ich jetzt eine Zahl + enter oder nur enter eingegeben habe
    ist doch klar! 😃



  • Hallo

    Die Bedingung auf "" war schon richtig, die Benutzung der Methode empty ist optimaler.
    Das Problem ist der >> Operator (bzw. desen behandlung von cin). Nimm std::getline

    #include <iostream>
    #include <string>
    
    int main()
    {
      std::string test;
      std::getline(std::cin, test);
      if (test.empty())
        std::cout << "Nur Enter" << std::endl;
      else
        std::cout << "Wert und Enter" << std::endl;
    }
    

    bis bald
    akari



  • Und wenn du danach den Inhalt der eingegebenen Zeile als double weiterverarbeiten willst, lies dir mal den FAQ-Beitrag "Einmal Zahl und zurück" durch.



  • danke schön!!!


Anmelden zum Antworten