Forum
Tipps
News
Menu-Icon

Dev-C++ WindowsXP

Tach auch!
Ich hab mir son buch über c++ gekauft(jetzt lerne ich c++).
Die Software(DJGPP)fand ich ziemlich .... und hab mir deswegen Dev-C++ gezogen.
Wenn ich die Befehle cout oder cin eingebe kommt die fehlermeldung(bei #include <windows.h>)dass diese befehle unbekannt sind.
Wenn och anstatt <windows.h> <iostream.h> nehm läuft das programm bzw. der text "Hello World" über die Eingabeaufforderung, die sich bei mir nach einem Bruchteil einer Sekunde wieder schließt(habe WindowsXP).
Kann mir jemand helfen das trotzdem hinzukriegen???

Mal ein Bsp.:
#include <iostream.h>

int main()
{
cout << "Hello World!\n";
return 0;
}
Kann mir vielleicht einfach jemand sagen wie ich das für eine 'Windows Application' machen muss???
Oder am Besten wie ich das mache das der die Befehle cin und cout auch für die 'Windows Application' akzeptiert???
Cya RedHawk


Antworten zu Dev-C++ WindowsXP:

cin und cout sind ein und Ausgabe für die Konsole,
benutze also besser den Projekttyp "Win32 Konsole",
denn für "Win32 GUI" solltest du auch Kenntnisse in der Windows-Programmierung haben,nicht nur im Standard C++.
Und cin und cout sind sowieso aus iostream,also solltest du auch das verwenden und btw nicht iostream.h denn das ist veraltet und nicht standard-konform,du müsstest dann natürlich noch
using namespace std;
einfügen.
Damit sich die Konsole nicht sofort wieder schließt kannst du entweder Sleep(1000) benutzen,wobei der Parameter die Anzahl der Millisekunden ist,die das Programm nichts tun soll,oder einfach cin.get().
Beim letzteren darfst du aber nicht vergessen,dass cin
nur bis zum Leerzeichen einliest,der Rest eines vorher eingegebenen Strings befindet sich noch im Puffer und so würde cin.get nichts bringen,für dich aber noch nicht wichtig.


Kannst du mir auch sagen wo ich sleep hinsetzen soll???
1.Fehlermeldung:ANSI C++ forbids Declaration 'sleep' with no type
2.Fehlermeldung:syntax error at end of input

cya redhawk

Wenn du mir den Code nicht zeigst kann ich nicht helfen,
so war es gedacht:
#include <iostream>
using namespace std;

int main()
{
 cout << "Hello World!\n";
 Sleep(2000); //hier alternativ cin.get();
}

ich habe folgendes eingegeben:
#include <iostream>
using namespace std;

int main()
{
cout << "Hello World!\n";
sleep(2000);
}
und trotzdem erscheint eine Fehlermeldung die da heißt:
'7 untitled1.cpp
 implicit declaration of function `int sleep(...)'

Also was ist zu tun?

1. Gross-Klein-Schreibung ist relevant ...
2. normalerweise ist Sleep in <windows.h>, aber bei sonem wurst-compiler weiss man ja nie...

2. normalerweise ist Sleep in <windows.h>, aber bei sonem wurst-compiler weiss man ja nie...
Bla bla bla...ob man noch windows.h inkludiert oder ob Sleep schon in iostrem definiert ist,ist egal,der Standard schreibt den iostream Aufbau imho nicht vor.

Sleep ist bestimmt nicht in iostream deklariert, sondern  irgendein unfähiger Frickler hat es nicht geschafft, iostreams zu implementieren, ohne gleich ganz Windows in den Scope zu holen. Vielleicht ist auch das mit ein Grund, wieso der gcc immer so fürchterlich langsam compiliert...

was ist denn jetzt<???
soll ich dann auch noch #include <windows.h> mit einbinden oda was???wennn ich das mache sagt der doch wieda das er cin und cout nich kennt!!!
Also wie soll ich das jetzt machen???vielleicht auch was an der eingabeaufforderung verstellen???
cya redhawk(bin ab heute abend im urlaub für ne woche)

Sleep ist bestimmt nicht in iostream deklariert, sondern  irgendein unfähiger Frickler hat es nicht geschafft, iostreams zu implementieren, ohne gleich ganz Windows in den Scope zu holen.
Direkt in iostream wird sowieso nur std deklariert,die ganzen Sachen die zu std gehören sind in den Dateien die mit iostream inkludiert werden,aber egal.
Aber es stimmt schon,Dev-Cpp ist wohl der einzige Compiler bei dem Sleep nach dem inkludieren von iostream benutzt werden kann,von daher sollte man besser windows.h nochmal extra einbinden,damit der Code auch auf anderen Compilern läuft.
Davon abgesehen ist der Dev-C++ jedoch ganz gut,jedenfalls das was ich bisher gesehen habe.
@Redhawk:
Erweiter deinen Code einfach um ein
#include <windows.h>,das sollte reichen.

Die haben das doch vorher schon erwähnt.
Du musst Sleep(2000) groß schreiben!

Das ist aber sch...e!Es ist egal ob ich jetzt Sleep großschreibe oda nicht weil ders nich kennt! Wenn ich noch #include <windows.h> mit einfüge klappt zwar alles aber dafür erscheint gar kein Fenster!!!!
Ich hoffe es gibt noch nen anderen Weg
Cya RedHawk(www.redhawk.de.tp)

Ich glaube, dein Programme ist nicht richtig installiert oder du hast das Programme erschoben.

Damal habe auch solsche Probleme, weil ich C Programme erschoben habe[/b]
Am besten solltest du neu installieren.
Und folgst Windows|exe[/b], weil ich fand,dass er richtig war.  

Versuchs doch mal mit dem Befehl

  system("PAUSE");

Das ist aber sch...e!Es ist egal ob ich jetzt Sleep großschreibe oda nicht weil ders nich kennt! Wenn ich noch #include <windows.h> mit einfüge klappt zwar alles aber dafür erscheint gar kein Fenster!!!!
Ich hoffe es gibt noch nen anderen Weg
Cya RedHawk(www.redhawk.de.tp)
Poste am besten Mal den Sourcecode in dem du windows.h inkludierst.

« Problem mit NASMMidi Dateien mit C abspielen »
 

Schnelle Hilfe: Hier nach ähnlichen Fragen und passenden Tipps suchen!

Fremdwörter? Erklärungen im Lexikon!
Eingabeaufforderung
Die Eingabeaufforderung ist ein Begriff aus dem IT-Bereich und bezeichnet eine Markierung auf der Kommandozeile, welche auf die Stelle verweist, an der man Kommandozeilen...

Malware
Mit Malware bezeichnet man allgemein Schadprogramme, die dazu entwickelt worden schädliche Funktionen auf Computern auszuführen. Das Wort setzt sich zusammen au...

nbsp
nbsp - oder besser als HTML-Code   - steht für "non-breaking space": zu deutsch: ein geschütztes Leerzeichen. Im Gegensatz zu einem normalen Leerzeichen so...