Konsole schließt sich komischerweise sofort
-
Hallo Community,
ich habe vor 6 Monaten mal einwenig aktiver programmiert und mache gerade ein schnelles Programm für einen Arbeitskollegen. Leider habe ich aber jetzt beim testen in Visual Studio das Problem das sich die Konsole sofort wieder schließt.
Hier mal der Code:
// ConsoleApplication2.cpp: Definiert den Einstiegspunkt für die Konsolenanwendung. // #include <stdlib.h> #include "stdafx.h" using namespace std; #include <iostream> int main() { int Eingabe_Auswahl; int Eingabe_EUR_BTC_ADA; int Eingabe_EUR_ETH_ADA; int Eingabe_BTC_EUR; int Eingabe_ADA_BTC; int Eingabe_ETH_EUR; int Eingabe_ADA_ETH; int Provision_GDAX_BTC_EUR = 0.0025; int Provision_GDAX_ETH_EUR = 0.0030; int Neue_EUR_EUR_BTC_ADA; int Neue_EUR_EUR_ETH_ADA; int Zwischenergebnis_EUR_BTC_ADA; int Zwischenergebnis_EUR_ETH_ADA; int Ergebnis_EUR_BTC_ADA; int Ergebnis_EUR_ETH_ADA; cout << "Bitte Umrechnungsart auswählen:\n"; cout << "1: Euro in Bitcoin -> Bitcoin in Cardano\n"; cout << "2: Euro in Ethereum -> Ethereum in Cardano\n"; cin >> Eingabe_Auswahl; system("cls"); do { if (Eingabe_Auswahl == 1) { cout << "Bitte geben Sie den Betrag in € ein, den sie gegen Cardano eintauschen wollen:\n"; cin >> Eingabe_EUR_BTC_ADA; system("cls"); cout << "Bitte geben Sie den Kurs von Euro in Bitcoin ein:\n"; cin >> Eingabe_BTC_EUR; system("cls"); cout << "Bitte geben Sie den Kurs von Bitcoin in Cardano ein\n"; cin >> Eingabe_ADA_BTC; system("cls"); Neue_EUR_EUR_BTC_ADA = Eingabe_EUR_BTC_ADA * Provision_GDAX_BTC_EUR; Zwischenergebnis_EUR_BTC_ADA = Eingabe_BTC_EUR / Neue_EUR_EUR_BTC_ADA; Ergebnis_EUR_BTC_ADA = Eingabe_ADA_BTC / Zwischenergebnis_EUR_BTC_ADA; cout << "Für "<< Eingabe_EUR_BTC_ADA << "€ erhalten Sie " << Ergebnis_EUR_BTC_ADA << "Cardano.\n"; cin.get() system("cls"); } else if (Eingabe_Auswahl == 2) { cout << "Bitte geben Sie den Betrag in € ein, den sie gegen Cardano eintauschen wollen:\n"; cin >> Eingabe_EUR_ETH_ADA; system("cls"); cout << "Bitte geben Sie den Kurs von Euro in Bitcoin ein:\n"; cin >> Eingabe_ETH_EUR; system("cls"); cout << "Bitte geben Sie den Kurs von Bitcoin in Cardano ein\n"; cin >> Eingabe_ADA_ETH; system("cls"); Neue_EUR_EUR_ETH_ADA = Eingabe_EUR_ETH_ADA * Provision_GDAX_ETH_EUR; Zwischenergebnis_EUR_ETH_ADA = Eingabe_ETH_EUR / Neue_EUR_EUR_ETH_ADA; Ergebnis_EUR_BTC_ADA = Eingabe_ADA_ETH / Zwischenergebnis_EUR_ETH_ADA; cout << "Für " << Eingabe_EUR_ETH_ADA << "€ erhalten Sie " << Ergebnis_EUR_ETH_ADA << "Cardano.\n"; system("cls"); } cout << "Bitte Umrechnungsart auswählen, oder 0 für Ende:\n"; cout << "1: Euro in Bitcoin -> Bitcoin in Cardano\n"; cout << "2: Euro in Ethereum -> Ethereum in Cardano\n"; cin >> Eingabe_Auswahl; cin.get() system("cls"); } while (Eingabe_Auswahl != 0) return 0; }
Danke für eure Hilfe.
-
Debugger
-
im debuger kommt die Meldung :
"ConsoleApplication2.exe" (Win32): "C:\Users\Wolly\source\repos\ConsoleApplication2\x64\Debug\ConsoleApplication2.exe" geladen. Symbole wurden geladen.
"ConsoleApplication2.exe" (Win32): "C:\Windows\System32\ntdll.dll" geladen. PDB-Datei wurde nicht gefunden oder konnte nicht geöffnet werden.
"ConsoleApplication2.exe" (Win32): "C:\Windows\System32\kernel32.dll" geladen. PDB-Datei wurde nicht gefunden oder konnte nicht geöffnet werden.
"ConsoleApplication2.exe" (Win32): "C:\Program Files\AVAST Software\Avast\x64\aswhooka.dll" geladen. PDB-Datei wurde nicht gefunden oder konnte nicht geöffnet werden.
"ConsoleApplication2.exe" (Win32): "C:\Windows\System32\KernelBase.dll" geladen. PDB-Datei wurde nicht gefunden oder konnte nicht geöffnet werden.
"ConsoleApplication2.exe" (Win32): "C:\Windows\System32\vcruntime140d.dll" geladen. PDB-Datei wurde nicht gefunden oder konnte nicht geöffnet werden.
"ConsoleApplication2.exe" (Win32): "C:\Windows\System32\ucrtbased.dll" geladen. PDB-Datei wurde nicht gefunden oder konnte nicht geöffnet werden.
"ConsoleApplication2.exe" (Win32): "C:\Windows\System32\kernel.appcore.dll" geladen. PDB-Datei wurde nicht gefunden oder konnte nicht geöffnet werden.
"ConsoleApplication2.exe" (Win32): "C:\Windows\System32\msvcrt.dll" geladen. PDB-Datei wurde nicht gefunden oder konnte nicht geöffnet werden.
"ConsoleApplication2.exe" (Win32): "C:\Windows\System32\rpcrt4.dll" geladen. PDB-Datei wurde nicht gefunden oder konnte nicht geöffnet werden.
Das Programm "[3808] ConsoleApplication2.exe" wurde mit Code 0 (0x0) beendet.
-
* Stell den Cursor in die Zeile
cout << "Bitte Umrechnungsart auswählen:\n";
* Drück F9
* Drück F5
-
benötigt eine do while schleife nicht ein abschließendes Semikolon? Nutze die ehrlich gesagt kaum..
do { } while (condition);
EDIT: da fehlen wohl generell ein paar ;
-
anti-freak schrieb:
benötigt eine do while schleife nicht ein abschließendes Semikolon?
Ja.
Nutze die ehrlich gesagt kaum..
Ja.
EDIT: da fehlen wohl generell ein paar ;
Ja.
-
SeppJ schrieb:
anti-freak schrieb:
benötigt eine do while schleife nicht ein abschließendes Semikolon?
Ja.
Nutze die ehrlich gesagt kaum..
Ja.
EDIT: da fehlen wohl generell ein paar ;
Ja.
JA!
-
DerNeueNeuling12 schrieb:
im debuger kommt die Meldung :
...
"ConsoleApplication2.exe" (Win32): "C:\Windows\System32\msvcrt.dll" geladen. PDB-Datei wurde nicht gefunden oder konnte nicht geöffnet werden.
...Diese Meldungen sind keine Fehler, sondern lediglich Hinweise, dass für die genannten DLL-Dateien keine Debug-Symbole zur Verfügung stehen.
Der Call Stack wird für Funktionen aus diesen DLLs also lediglich Funktionsadressen und nicht deren Namen anzeigen (bei Bedarf kann man unter
Tools->Options->Debugging->Symbols die Option "Microsoft Symbol Servers" auswählen, dann werden die entsprechenden Symbol-Datenbanken
automatisch heruntergeladen).Falls du übrigens gar nicht debuggen (schrittweise ausführen und dabei Werte von Variablen begutachten), sondern lediglich das Programm ausführen
möchtest, ohne dass sich die Konsole schließt, kannst du einfachStrg+F5
drücken. Dann wird das Programm ohne Debugger ausgeführt und das
Konsolenfenster wartet nach dessen Beendigung automatisch auf einen Tastendruck bevor es schliesst.