Stangl Puch
13. September 2010 - 21:28 Uhr
Hey Leute, ich fange gerade ein bisschen an zu programmiern und habe auch schon meine ersten eigenen Programme geschrieben und sie danach eben compiled. Das lief Fehlerlos und wollte sie dann eben ausführen, hab sie als .c gespeichert, aber wenn ich sie ausführe dann öffnet sich nur für ein paar Millisekunden das schwarze Kästchen wo sonst mein Programm sein sollte. Was ist damit falsch? Der Compiler zeigt an das in meinem Programm keine Fehler sind...
Könnte es sein das ich irgendwann man mal .c Datein falsch verknüpft habe?
Muffinrator
13. September 2010 - 23:35 Uhr
Denke du solltest dich mit deiner frage an Programmier Foren grade speziell zu C wenden, dort wird dir schneller + kompetenter geholfen.
Bin auch grade dabei das richtige Programmieren außer Web Sprachen zu erlenen, derzeit Objektorientiert mit Java ist ganz nett.
Kann dir mehr leider nicht helfen, außer nochmal zu Googeln und/oder in einem Fach-Forum nachzufragen.
Gruß
Mathis
whatnader
14. September 2010 - 00:04 Uhr
am besten, du zeigst den code einmal her.
was am nächsten liegen würde ist, dass du ein beenden drin hast ohne es an eine bedingung gebunden zu haben.
das musst du immer an eine bedingung knüpfen, zb "wenn benutzer 'b' eingibt, dann beenden".
Stangl Puch
14. September 2010 - 13:08 Uhr
@whatnader
Naja ich habs nicht so programmiert das das Programm sich gleich schließt, ich hab halt am Schluss das simple return 0;
Ich habs auch probiert mid dem einfachen Hello World Beispiel: (ist aber c++)
#include <cstdlib>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
printf("hallo welt");
return 0;
}
Wenn ich es compile geht alles rund, er zeigt keinen Fehler an und beim Ausführen wieder das selbe Problem wie bei meinem Programm.
Stangl Puch
14. September 2010 - 13:08 Uhr
@whatnader
Naja ich habs nicht so programmiert das das Programm sich gleich schließt, ich hab halt am Schluss das simple return 0;
Ich habs auch probiert mid dem einfachen Hello World Beispiel: (ist aber c++)
#include <cstdlib>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
printf("hallo welt");
return 0;
}
Wenn ich es compile geht alles rund, er zeigt keinen Fehler an und beim Ausführen wieder das selbe Problem wie bei meinem Programm.
jiraya2112
14. September 2010 - 19:24 Uhr
selbst hab ich eig c# gelernt, aber ich schätze mal, dass eine benutzereingabe fehlt O: (is zumindest in sharp so, aber was weiß ich? )
Tsv Killer
14. September 2010 - 19:45 Uhr
So mache ich es immer in C++.
Das cin.get() verhindert das sich die Konsole einfach schließt.
#include <iostream>
using namespace std;
int main()
{
cout << "Hallo Welt!" << endl;
cin.get();
return0;
}
Mfg Killer
whatnader
07. Oktober 2010 - 23:40 Uhr
Ich hatte schon lange kein C++ mehr aber ich glaube, für ein Miniprogramm würde ich so vorgehen:
char x;
cout<<"Zum Beenden drück b!\n"<<endl;
cin>>x;
if (x=='b')
cout<<"Ich habe vergessen, wie man ein C++-Programmiertes-Fenster schließt"<<endl;
else
cout<<"Dann bleib eben im Programm"<<endl;
Ich glaube, bei If-Anweisungen musste man mit {} hantieren.
Probier vlt auch mal für ein Hello-World-Programm den Befehlt "System('Pause');"
ich1994
10. Oktober 2010 - 21:11 Uhr
bei if-Anweisungen muss man erst mit{} hantieren wenn es mehr als ein Befehl ist, der ausgeführt werden soll.
Also:
if(Auswahl=='b')
cout<<"Ich habe vergessen, wie man ein C++-Programmiertes-Fenster schließt"<<endl;
Das passt ja da oben.
Zu deinem Problem mit dem sich schliesendem Fenster: Das ist kein Fehler. Dein Programm macht genau das was du wolltest. Etwas auf der Konsole ausgeben und das war es.
Damit es sich nicht schliest solltest du ein std::cin.get() vor dem return 0; stellen bzw
bei C einfach ein scanf(); vor dem Programmende.
Fragen bezüglich C++ kannst mich gerne weiterfragen. Aber bitte dann in PM-Form, da ich selten im RSC-Forum rumschau
MfG