![]() |
C++ Problem
Hallo,
ich fange gerade an, mich mit C++ und C auseinander zu setzen. Nun habe ich ein Problem und zwar: wenn ich dann starten möchte, funktioniert es nicht. es kommt immer diese Meldung: Ich benutze Microsoft Visual C++ 2010 Express. Danke im Vorraus! |
hat alles funktioniert, das program wurde mit dem code 0 (siehe return 0);
mach mal ausführen -> cmd und ziehe deine erstellte .exe rein, dann siehst du auch die ausgabe "Hello World", beim starten deiner .exe müsste die console kurz aufscheinen und dann wieder verschwinden |
Danke, aber kann ich das nicht verhindern, dass es immer verschwindet und was hat das zu bedeuten?
'Hallo World.exe': Loaded 'C:\Users\Name\Documents\Visual Studio 2010\Projects\Hallo World\Debug\Hallo World.exe', Symbols loaded. 'Hallo World.exe': Loaded 'C:\Windows\SysWOW64\ntdll.dll', Cannot find or open the PDB file 'Hallo World.exe': Loaded 'C:\Windows\SysWOW64\kernel32.dll', Cannot find or open the PDB file 'Hallo World.exe': Loaded 'C:\Windows\SysWOW64\KernelBase.dll', Cannot find or open the PDB file 'Hallo World.exe': Loaded 'C:\Windows\SysWOW64\msvcr100d.dll', Symbols loaded. The program '[3388] Hallo World.exe: Native' has exited with code 0 (0x0). |
Also wenn du schon C++ programmieren willst, dann würde ich auch die Funktionen und Klassen von C++ verwenden.
Anstelle von: printf("Hello World!"); Schreibst du: cout << "Hello World!"; Damit das klappt musst du noch "#include <iostream>" oben hinzufügen. Dafür dass das ganze offen bleibt, musst du ein Zeichen einlesen. Als Beispiel so (vor "return 0": cin.ignore(); |
@LorDstaR
Oder du startest dein Programm direkt in einer Konsole. Dann kann nichts verschwinden bzw dann kommen nur schwerwiegende Meldungen. Bzw wenn du im Studio dein Programm mit Ctrl-F5 startest, bleibt die Konsole auch nach der Beendigung des Programmes stehen. |
@LorDstaR
#include <stdlib.h> int main(void){ //was auch immer system("pause");//erzeugt eine Ausgabe in der Console und wartet auf Tastendruck return 0; } |
1. ist system("pause") nicht portabel (kein C++ Standard) und läuft eigentlich nur unter Windows
2. ist ein system()-Aufruf einfach nur unnötig, da er dazu viel zu viele Schritte benötigt (Programm pausieren, eine neue Shell öffnen, pause aufrufen, ...) Also warum so einen unnötigen "Mist" verwenden, wenn cin.get() oder cin.ignore() auf jedem OS und direkt in deinem Programm in C++ funktioniert (Ressourcensparender ist ...)? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:28 Uhr. |
Powered by vBulletin® (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.