Programm beenden j/n ?



  • Hi ich habe mal nee kleine frag?

    ich habe seit ein paar tagen c++ angefangen nun will ich bei der konsolenprogrammierung eine frage einbauen wo mich das programm fragt ob es beenden soll? Wenn ich mit nein antworte soll es von einer bestimmten stelle wieder anfangen.

    habe mal gelesen dass das mit dem Goto keine gute idee ist. Weis nur net wie ich es sonst machen soll.

    Danke im voraus!



  • hm, ich machs immer so :

    #include <iostream>
    using namespace std;
    
    int main()
    {
        char quit='n';
        while (quit=='n') {
            // programmcode hier;
            cout << "programm beenden? j/n\n";
            cin >> quit;
        }
        cout << "ciao" << endl;
    }
    


  • Mit einer do-while Schleife.



  • Danke geht super



  • nun, ich finde es aber auch doof (gerade bei großen code mit vielen schleifen innen drin), das "Goto" völlig zu verbannen... ich meine, gut, als profi programmierer in einer firma würde ich drauf verzichten, aber als hobby programmierer würde ich in solchen fällen, wenn der code sehr verschachtelt ist oder wenn er eben sehr überschaubar ist, doch auf das goto zurückgreifen. was spricht denn dagegen?

    Mr. B



  • Mr. B schrieb:

    nun, ich finde es aber auch doof (gerade bei großen code mit vielen schleifen innen drin), das "Goto" völlig zu verbannen... ich meine, gut, als profi programmierer in einer firma würde ich drauf verzichten, aber als hobby programmierer würde ich in solchen fällen, wenn der code sehr verschachtelt ist oder wenn er eben sehr überschaubar ist, doch auf das goto zurückgreifen. was spricht denn dagegen?

    Mr. B

    Dass der Code dadurch noch unüberschaubarer werden würde.



  • naja, ihr habt ja gewonnen, aber ich würde es trotzdem nehmen! :p 😃



  • #include <iostream>
    int main() {
      a:
        std::cout << "Das ";
        goto d;
      b:
        std::cout << std::endl;
        goto f;
      c:
        std::cout << "gegen ";
        goto e;
      d:
        std::cout << "spricht ";
        goto c;
      e:
        std::cout << "goto.";
        goto b;
      f:
        return 0;
    }
    


  • 0xdeadbeef schrieb:

    #include <iostream>
    int main() {
      a:
        std::cout << "Das ";
        goto d;
      b:
        std::cout << std::endl;
        goto f;
      c:
        std::cout << "gegen ";
        goto e;
      d:
        std::cout << "spricht ";
        goto c;
      e:
        std::cout << "goto.";
        goto b;
      f:
        return 0;
    }
    

    hehe


Anmelden zum Antworten