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

m3xx

Alter Hase

  • »m3xx« ist der Autor dieses Themas

Beiträge: 434

Beruf: Student

  • Private Nachricht senden

1

07.01.2012, 18:36

C++ Das Programm "[1068] Calculator.exe: Systemeigen" wurde mit Code 0 (0x0) beendet.

Hi, diese Meldung: "Das Programm "[1068] Calculator.exe: Systemeigen" wurde mit Code 0 (0x0) beendet." regt mich wie sonst was auf, da sie manchmal bei mir keinen Sinn ergibt.
Wenn ich debuge in meinem Taschenrechner den command "chelp" eingebe crasht er und die Meldung kommt. Passiert auch wenn ich ohne C++ starte, bekomme nur dann halt net die Meldung im Ausgabefenster. Mein Taschenrechner ist net das einzige Programm bei dem das passiert auch bei Programmen die ich 1:1 aus Heiko Kalistas Buch schreibe kommt es vor das es passiert.
Bereinigen der Projektmappe löst das Problem meines Taschenrechners nicht.

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
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
// Console Rechner
// 
//
#include <iostream>
#include <string>

using namespace std;

int main ()
{
    //Variablen
    //
    string cCommand;

    // Consoleninformationen
    cout << "==================" << endl;
    cout << "==================" << endl;
    cout << "==================" << endl;
    cout << "\nGib \"chelp\" fuer die Hilfe ein!\n\n";
    cin >> cCommand;

    //Commandausführung
    if ((cCommand == "chelp") || (cCommand == "CHELP"))
    {
        cout << "\"calc\" fuer den Taschenrechner schreiben!\nDer Taschenrechner unterstuetz die Operationen:\nPlus: +\nMinus: -\nMal: *\nGeteilt: /\nModulu: %\nAndere Eingaben koennen Fehler verursachen!" << endl;
    }
    else if ((cCommand == "calc") || (cCommand == "CALC"))
    {
    // Variablen
    //
    int Zahl1 = 0, Zahl2 = 0;
    char chZeichen;

    cout << "\n\n";

    for (int i=0; i != -1; i++)
    {
        cout << "Rechnung " << i +1 << "\n" << endl;
        cout << "Wert 1: ";
        cin >> Zahl1;
        cout << endl;
        cout << "Rechenoperation: ";
        cin >> chZeichen;
        cout << endl;
        cout << "Wert 2: ";
        cin >> Zahl2;
        cout << endl;

        // Rechnung:
        if (chZeichen == '+')
            cout << "Ergebnis: " << Zahl1 + Zahl2 << endl;
        else if (chZeichen == '-')
            cout << "Ergebnis: " << Zahl1 - Zahl2 << endl;
        else if (chZeichen == '*')
            cout << "Ergebnis: " << Zahl1 * Zahl2 << endl;
        else if (chZeichen == '/')
            cout << "Ergebnis: " << Zahl1 / Zahl2 << endl;
        else if (chZeichen == '%')
        {
            cout << "Ergebnis: " << Zahl1 / Zahl2 << endl;
            cout << "Rest: " << Zahl1 % Zahl2 << endl;
        }
        else
            cout << "Falsche Eingabe!" << endl;


        // Neue Zeile nach Beendigung der Rechnung
        cout << "\n\n";
    }
    }
    else
    {
        cout << "Falsche Eingabe! Geben sie \"chelp\" fuer Hilfe ein!" << endl;
    }

    return 0;
}

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »m3xx« (07.01.2012, 18:52)


dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

2

07.01.2012, 18:48

Was genau meinst du mit crashen!?
Wenn ich mir den Code so anschau, würd ich genau dieses Verhalten erwarten. Wenn der Benutzer "chelp" oder "CHELP" eingibt, dann wird die Meldung in Zeile 25 ausgegeben und main() returned 0 (Zeile 76), das Programm beendet sich also mit dem Rückgabewert 0x0, ganz so wie du es programmiert hast...

m3xx

Alter Hase

  • »m3xx« ist der Autor dieses Themas

Beiträge: 434

Beruf: Student

  • Private Nachricht senden

3

07.01.2012, 18:51

Mit crashen meine ich das es einfach ausgeht.
Mh und könnteste mir sagen wie ich das dann wieder umgehe, das ich wieder am anfang hin komme, Zeile 10 und folgend.

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

4

07.01.2012, 18:52

Wie wärs mit einer Schleife? ;)

m3xx

Alter Hase

  • »m3xx« ist der Autor dieses Themas

Beiträge: 434

Beruf: Student

  • Private Nachricht senden

5

07.01.2012, 18:54

k die idee ist gut, aber das prob ist halt wenn ich in meiner console "chelp" eingebe zeigt er mir den Text und geht sofort aus ohne das ich irgend eine Taste drücken muss oder sonstiges....

6

07.01.2012, 18:55

oder mit goto.

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

7

07.01.2012, 18:57

k die idee ist gut, aber das prob ist halt wenn ich in meiner console "chelp" eingebe zeigt er mir den Text und geht sofort aus ohne das ich irgend eine Taste drücken muss oder sonstiges....

Wenn du willst das er auf einen Tatendruck wartet, dann musst du das Programm so programmieren, dass es auf einen Tastendruck wartet ;)

m3xx

Alter Hase

  • »m3xx« ist der Autor dieses Themas

Beiträge: 434

Beruf: Student

  • Private Nachricht senden

8

07.01.2012, 18:57

Mit goto kann ich nix anfangen ich bin mit meinem Buch noch net so weit zumindest stand davon noch nix. Außer es ist exakt wie beim Batchen dann weiß ich wie es funzt^^

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

9

07.01.2012, 18:58

Ja, goto funktioniert genau so wie in einem Batchfile (die Syntax ist ganz leicht verschieden). Aber verwend besser eine Schleife.

10

07.01.2012, 19:00

Du kannst "Pausen" mit

C-/C++-Quelltext

1
std::cin.ignore(10000, '\n');
oder

C-/C++-Quelltext

1
system("pause");
bei der 2.Variante musst du <windows.h> inkludieren.

100. Post :D

Werbeanzeige