Frage von Tetris98, 73

Was habe ich falsch gemacht (C++)?

Da ich mir vor ein paar Wochen vorgenommen hatte die Sprache c++ zu erlernen habe ich heute damit angefangen . Als erstes wollte ich das gute alte "Hello World" programmieren :

1 #include 2 3 int main() { 4 std::cout << "Hello World"; 5 6 system("pause"); 7 8 return 0, 9 }

Allerdings funktioniert das nicht so wie gedacht , denn beim kompilieren teilt mir VS jedes Mal mit , dass es einen Syntaxfehler in Zeile 9 gibt und ein "Ausdruck" erwartet wird .

Kann mir bitte jemand sagen was ich falsch gemacht habe ?

Mfg Tetris98

Hilfreichste Antwort - ausgezeichnet vom Fragesteller
von RockstarNorth, 40

system("pause") ist eine blamage & absolutes no-go als C++ Programmierer.

So müsste es aussehen:

#include <iostream>

int main(void)

{

std::cout << "Hello World" << std::endl;

getchar();

return 0;

}

Kommentar von Tetris98 ,

Danke RockstarNorth

P.s Was ist an system ("pause") so falsch?

Kommentar von TheBassHead ,

Der "system" Befehl ist sehr Ressourcen aufwendig, da er direkt auf das Betriebssystem zugreift und auch einige Unterprogramme ausführt(kommt auf den Befehl an)

Das alle ist nicht nur sehr langsam und Ressourcen aufwendig, sondern lässt viele Antivirenprogramme durchdrehen da der Befehl wie schon gesagt direkt auf das Betriebssystem zugreift und man damit sehr viel "sche***" machen kann.

Bei dem getchar() Befehl den RockstarNorth vorgeschlagen hat wartet das Programm nur auf eine Eingabe des Benutzer - schnell und einfach.

Und nun im vergleich was der Befehl system("pause") alles macht:

    1. suspend your program

    2. call the operating system

    3. open an operating system shell (relaunches the O/S in a sub- process)

    4. the O/S must now find the PAUSE command

    5. allocate the memory to execute the command

    6. execute the command and wait for a keystroke

    7. deallocate the memory

    8. exit the OS

    9. resume your program

Antwort
von reneb93, 39

return 0; sollte auf jeden fall schon einmal in zeile 8 stehen

Kommentar von Tetris98 ,

Danke reneb93

Antwort
von LeHunter, 32

Du musst auch was includen, in dem Beispiel iostream. Sollte dann so aussehen: 

#include <iostream> und dann der Rest

Kommentar von Tetris98 ,

Danke lehunter

Antwort
von RaageRaven, 27

Semikolon fehlt bei return 0;

Kommentar von Tetris98 ,

Danke RaageRaven

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten