Das ist auf so viele Arten böse...Quote:
Das sollte da so aussehen !
#include<iostream>
using namespace std;
void main(){
cout<<"Hallo"<<endl;
system("PASUE"); // Das der Debugger nich gleich wieder zumacht !
}
1.) dass die main funktion standardtechnisch als void deklariert werden muss ist natürlich quatsch, richtig ist für c++ die "int main" vairante, das programm muss ja dem betriebssystem einen rückgabewert liefern.
nachlesbar in der C standard definition: [Only registered and activated users can see links. Click Here To Register...] punkte 164, 165
2.) using namespace std ist zwar für kleine projekte ok, kann aber bei größeren projekten kollisionen im namespace erzeugen. lieber gar nicht erst angewöhnen.
3.) system() calls sollte man so weit wie möglich vermeiden, wenn man einigermaßen portabel programmieren will. von den mannigfaltigen anderen problemen mit system() fang ich gar nicht erst an. ergo: auch nicht angewöhnen :)
Das ist leider das Problem mit vielen vielen anfänger tutorials und büchern in c++. die meisten taugen einfach nichts, weil viele sachen einfach schlichtweg falsch sind.
hier mal eine aufgebesserte variante:
Code:
#include <iostream>
int main()
{
std::cout << "hello world" << std::endl;
return 0;
}
mögliche lösungen:
1.) die getchar() variante, die genannt wurde
2.) system("pause") (ist aber, wie gesagt, böse)
3.) bei return 0 einen breakpoint setzen ( <- das würde ich dir empfehlen)
4.) visual studio nur zum bauen verwenden, und das entstandene programm auf der kommandozeile starten. dann bleibt dir die ausgabe auch erhalten. (dafür geht aber der debugger verloren, d.h. für größere projekte weniger gut geeignet)
Soviel dazu. bei weiteren fragen gerne anklopfen :)