Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

17.10.2010, 18:09

Programm schließt sich trotz cin.get()

Da mein Programm sich immer von selbst geschlossen hat, habe ich hier im Forum gelesen und cin.get() benutzt, aber das funktioniert bei mir bei Listing 2.6 nicht mehr. Liegt das daran, dass vorher schon eine Eingabe per cin erfolgt ist ? Und gibts dafür dann einen anderen Befehl ?

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include  <iostream>

using namespace std;

int main ()
{
    int Runde1, Runde2, Runde3;
    int Gesamtpunkte;

    cout << "Ergebnis der 1. Runde ?";
    cin >> Runde1;

    cout << "Ergebnis der 2. Runde ?";
    cin >> Runde2;

    cout << "Ergebnis der 3. Runde ?";
    cin >> Runde3;

    Gesamtpunkte = Runde1 + Runde2 + Runde3;
    cout << "Ihre Gesamtpunktzahl: " << Gesamtpunkte << endl;
    cin.get();
    return 0;
}

Bobbafat

Frischling

Beiträge: 7

Wohnort: Paderborn

Beruf: Verfahrensmechaniker

  • Private Nachricht senden

2

17.10.2010, 18:20

Also bei mir gehts einwandfrei.
Ich geb Punkte ein das Programm liefert das Ergebnis und beendet anschließend
genau das solls ja auch machen.

3

17.10.2010, 18:23

Es soll sich schließen nachdem du Enter gedrückt hast und bei mir schließt es sich sofort.

Bobbafat

Frischling

Beiträge: 7

Wohnort: Paderborn

Beruf: Verfahrensmechaniker

  • Private Nachricht senden

4

17.10.2010, 18:27

Startest du denn mit STRG + F5 oder aus dem Ordner die exe,
weil wenn du die exe startest wartet das programm nicht auf die
Eingabe um beendet zu werden.

5

17.10.2010, 18:29

Ich hatte es mit F5 debuggt. Wenn man Strg+F5 drückt wird es nicht beendet ? Und was wäre dann z.B. wenn man das Programm jemanden senden will ?

Bobbafat

Frischling

Beiträge: 7

Wohnort: Paderborn

Beruf: Verfahrensmechaniker

  • Private Nachricht senden

6

17.10.2010, 18:32

Also mit STRG F5 wartet der mit dem beenden bis du Enter drückst.

Wie meinst das mit senden per e-mail oder icq?

7

17.10.2010, 18:35

Ja z.B. Die Person müsste das ja dann per cmd starten damit es nicht schließt. Das ist ein bisschen umständlich.

Bobbafat

Frischling

Beiträge: 7

Wohnort: Paderborn

Beruf: Verfahrensmechaniker

  • Private Nachricht senden

8

17.10.2010, 18:37

Musst noch bissl warten bis das Thema Schleifen kommt, da wird das
Programm immer wiederholt bis du es beendest.

9

17.10.2010, 18:39

Ok danke für deine Hilfe.

MCP

Alter Hase

Beiträge: 513

Wohnort: Paderborn

Beruf: Software-Entwickler

  • Private Nachricht senden

10

17.10.2010, 18:49

Versuch mal den Eingabepuffer zu löschen. Manchmal hängt da noch ein Enter fest, dass dann anstelle des cin.get(); ausgelesen wird und somit das Programm einfach weiter läuft.
Um den Puffer zu löschen gibt es mehrere Möglichkeiten: std::cin.clear(); std::cin.flush(); und std::cin.ignore(INT_MAX); ist auch eine Möglichkeit, wo einfach alle Zeichen innerhalb des Puffers ignoriert werden.

Werbeanzeige