kompiliertes Programm bleibt nicht stehen
-
Ich denke mal das es einfach daran liegt das sich dein Konsolenfenster automatisch beendet wenn das Programm beendet, was ja hier nicht lange dauert, also solltest du dich entweder einfach freuen das es funktioniert hat, oder eine Eingabe einbauen, so das sich das Programm nicht sofort beendet.
-
zeig mal den Code
btw.
http://fara.cs.uni-potsdam.de/~kaufmann/?page=GenCppFaqs&faq=main#Answ
http://fara.cs.uni-potsdam.de/~kaufmann/?page=GenCppFaqs&faq=iostream#Answ
-
Der code sieht jetzt so aus:
#include <iostream.h>.
main ()
{
cout<< "hello world\n";
return 0;
}// C++-Variante:
#include <iostream>void wait ()
{
std::cin.clear ();
std::cin.ignore ( std::cin.rdbuf () -> in_avail () );
std::cin.get ();
}cu Matthias
-
-
lies dir am besten mal das Tutorial durch
-
Matthis schrieb:
Der code sieht jetzt so aus:
#include <iostream.h>.
main ()
{
cout<< "hello world\n";
return 0;
}// C++-Variante:
#include <iostream>void wait ()
{
std::cin.clear ();
std::cin.ignore ( std::cin.rdbuf () -> in_avail () );
std::cin.get ();
}cu Matthias
Hallo,
du solltest wenn du die funktion void wait() benutzen willst, sie auch in deinem main() aufrufen.
sprich du solltest es so (oder so in der art) machen:#include <iostream.h> // einmal inkludieren sollte reichen ;-) void wait () { std::cin.clear (); std::cin.ignore ( std::cin.rdbuf () -> in_avail () ); std::cin.get (); } int main () { cout<< "hello world\n"; wait(); // an dieser Stelle soll gewartet werden return 0; /* wenn die function main() eine 0(null) zurueckgibt, sollte der rueckgabetyp auch angegeben werden ( int main() oder bool main () ) korrigiert mich falls ich mich da irre */ } // C++-Variante:
gruss,
need_input
-
korrigiert mich falls ich mich da irre
void main() und bool main() sind vom Standard nicht vorgesehen. Man sollte immer
int main() oder int main(int argc, char **argv) bzw. int main(int argc, char *argv[]) nutzen!
und iostream.h ist auch veraltet
(warum nach 5 Jahren ISO Standard das immer noch nicht jeder weiss ist mir schleierhaft
)
schaut euch einfach mal die Links an, die ich bereits in dem Beitrag gepostet habe
-
need_input:
#include <iostream> // ohne .h, siehe kingruedis Link void wait () { std::cin.clear (); std::cin.ignore ( std::cin.rdbuf () -> in_avail () ); std::cin.get (); } int main () { cout << "Hello, world\n"; wait(); return 0; // braucht man nicht unbedingt /* wenn die function main() eine 0(null) zurueckgibt, sollte der rueckgabetyp auch angegeben werden ( int main() oder bool main () ) korrigiert mich falls ich mich da irre */ // ja! }
-
kingruedi schrieb:
korrigiert mich falls ich mich da irre
void main() und bool main() sind vom Standard nicht vorgesehen. Man sollte immer
int main() oder int main(int argc, char **argv) bzw. int main(int argc, char *argv[]) nutzen!
und iostream.h ist auch veraltet
(warum nach 5 Jahren ISO Standard das immer noch nicht jeder weiss ist mir schleierhaft
)
schaut euch einfach mal die Links an, die ich bereits in dem Beitrag gepostet habe
alles klar korrektur angenommen und gemerkt
ich gelobe mich zu besserngruss,
need_input
-
trotzdem noch Fehler. cout befindet sich nun auch im Namespace std! Und das mit bool main ist immer noch falsch im Kommentar
-
Ups, habe ich gar nicht drauf geachtet.
-
next try:
#include <iostream> void wait () { std::cin.clear (); std::cin.ignore ( std::cin.rdbuf () -> in_avail () ); std::cin.get (); } int main () { std::cout << "Hello, world\n"; wait(); return 0; /* wenn die function main() eine 0(null) zurueckgibt, sollte der rueckgabetyp auch angegeben werden ( int main() ) korrigiert mich falls ich mich da irre */ // ja! // danke! }
need_input