3164
14.12.2005, aktualisiert am 17.12.2005
6657
11
0
suche c plusplus compiler für anfänger
hallo , wie die überschrift schon sagt suche ich einen einfachen c++ compiler vlt auch mit entwicklerumgebung, er sollte freeware sein.
habe mir dev-C++ heruntergeladen, aber der macht immer einen Fehler beim bspProgramm:
Dies ist ein Kommentar
#include <iostream.h> Hier werden zusätzliche Befehle eingebunden
void main() Das ist das Hauptprogramm
{ Hier fängt ein Anweisungsblock an
cout << "Hallo Welt!" << endl;
Hier wird etwas ausgegeben
} Hier hört der Anweisungsblock auf
und da ich die programmiersprache noch nicht gut genug behersche kann ich denn fehler auch nicht deuten.
vielen dank im voraus auf eure antworten...
habe mir dev-C++ heruntergeladen, aber der macht immer einen Fehler beim bspProgramm:
Dies ist ein Kommentar
#include <iostream.h> Hier werden zusätzliche Befehle eingebunden
void main() Das ist das Hauptprogramm
{ Hier fängt ein Anweisungsblock an
cout << "Hallo Welt!" << endl;
Hier wird etwas ausgegeben
} Hier hört der Anweisungsblock auf
und da ich die programmiersprache noch nicht gut genug behersche kann ich denn fehler auch nicht deuten.
vielen dank im voraus auf eure antworten...
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 21626
Url: https://administrator.de/contentid/21626
Ausgedruckt am: 20.11.2024 um 12:11 Uhr
11 Kommentare
Neuester Kommentar
tach...
du suchst einen compiler für c++ ...
mein tipp wäre auch dev c++ gewesen..
ist der quelltext vollständig .. oder hast du den gekürzt ?
nämlich bei "#include" ... welche bibliotheken hast du eingebunden ?
ansonsten versuche mal anstelle von "void main()" .. "int main()"..
aus irgendwelchen Gründen .. hatte ich oft Probleme damit !!
Mfg cerbix
du suchst einen compiler für c++ ...
mein tipp wäre auch dev c++ gewesen..
ist der quelltext vollständig .. oder hast du den gekürzt ?
nämlich bei "#include" ... welche bibliotheken hast du eingebunden ?
ansonsten versuche mal anstelle von "void main()" .. "int main()"..
aus irgendwelchen Gründen .. hatte ich oft Probleme damit !!
Mfg cerbix
sorry.. bins nochma ...
habe mal in mein schlaues büchlein geschaut und dir mal meine Variante aufgeschrieben ..
sieht fast identisch aus !
#include <iostream.h>
int main()
{
cout << "Hello World!";
return 0;
}
so funktioniert das ganze bei mir ohne Probleme ..
wenn du noch den Befehl : <<endl; einfügen willst.. einfach einfügen =)
so .. dann probier es mal weiter ..
Mfg cerbix
habe mal in mein schlaues büchlein geschaut und dir mal meine Variante aufgeschrieben ..
sieht fast identisch aus !
#include <iostream.h>
int main()
{
cout << "Hello World!";
return 0;
}
so funktioniert das ganze bei mir ohne Probleme ..
wenn du noch den Befehl : <<endl; einfügen willst.. einfach einfügen =)
so .. dann probier es mal weiter ..
Mfg cerbix
http://www.borland.com/downloads/download_cbuilder.html
versuche mal diesen compiler ..
mit den bibliotheken werden die Befehle eingebunden ...
<iostream.h> ist für die Ausgabe .. (genaueres weiß ich so auch nicht )
Die Fehlermeldung ist mir bei dev c++ nicht bekannt..
hatte ziemlich oft, dass die Zeile "void main()" nicht funktioniert hat..
Hoffe, dass dieser Rat hilft !
Mfg cerbix
NACHTRAG :
http://www.engin.umd.umich.edu/CIS/course.des/cis400/cpp/hworld.html
kannst dir mal das Tutorial anschauen .. da ist auch die Bibliothek iostream.h vorhanden ..
Administrator.de .. scheint es nicht ganz anzuzeigen ..
versuche mal diesen compiler ..
mit den bibliotheken werden die Befehle eingebunden ...
<iostream.h> ist für die Ausgabe .. (genaueres weiß ich so auch nicht )
Die Fehlermeldung ist mir bei dev c++ nicht bekannt..
hatte ziemlich oft, dass die Zeile "void main()" nicht funktioniert hat..
Hoffe, dass dieser Rat hilft !
Mfg cerbix
NACHTRAG :
http://www.engin.umd.umich.edu/CIS/course.des/cis400/cpp/hworld.html
kannst dir mal das Tutorial anschauen .. da ist auch die Bibliothek iostream.h vorhanden ..
Administrator.de .. scheint es nicht ganz anzuzeigen ..
Moin ADMIN und cerbix,
ist ja eigentlich nicht mein Fachgebiet, aber ein paar Tipps versuch ich trotzdem.
a) Die Include-Dateien bei C/C++ heißen *.h (wie Header) am Ende. Die Standard-Header-Dateien sind auch im üblichen Standard-Include-Verzeichnis des Compilers - im Suchpfad sozusagen.
Wenn das so ist und eine Standard-Header-Datei wie iostream.h benötigt wird, dann schreibt man/frau:
#include <iostream.h>
bedeutet: ziehe eine Include-Datei aus dem "normalen" Include-Verzeichnis an
Wenn später mal eigene *.h-Dateien dazukommen in Projekten oder Anwendungen, werden diese meist in eigene Verzeichnisse oder Unterverzeichnisse gelegt.
#include "meineErste.h" Schreibweise: in Anführungszeichen bedeutet: nicht aus dem Include-Verzeichnis
#include "c:\spezielles\cpp\include\Zweite.h" // ...sondern aus dem aktuellen; aus relativ oder absolut genannten Verzeichnissen
b) Spitze Klammern gehören nicht nur bei C-Source zu den Sonderzeichen, sondern auch in HTML, mit dem hier die Seiten aufgebaut werden.
Dummerweise wird alles, was sich innerhalb von spitzen Klammern befindet, als HTML-Tag (meinetwegen zu übersetzen mit Formatierungs- oder Strukturierungsanweisung) interpretiert und ist eben "nicht zu sehen".
Also müsst ihr beim Posten von C-Code die spitzen Klammern "maskieren" (als Sonderzeichen kenntlich machen)
Für Spitze-Klammer-Auf ("<") müsst ihr "&<dummy>lt" schreiben
für Spitze-Klammer-Zu (">") müsst ihr "&<dummy>gt" schreiben.
-oder-
ihr ersetzt im Source-Code die spitzen Klammern durch runde Klammern und erwähnt das auch im Posting.
c) Ob die Hello-World-Demo vom Typ void() oder vom Typ int() ist, hängt vom Programmierer ab.
Wenn sie vom Typ int() ist, muss sie einen Integer-Rückgabewert haben, so wie oben den "return (0);"
Wenn sie vom Typ void() ist, darf sie keinen Rückgabewert haben (denn void heißt eben "ohne Rückgabewert").
Ist also beides "richtig" oben.
d) @admin
Du hast vermutlich kein Problem im Kompiler, sondern außerhalb.
Du hast den Kompiler in einem Verzeichnis installiert, der Leerzeichen enthält ("c:\Dokumente und bla...\...\Eigene Dateien\..")
Das wied eventuell nicht in den mitgelieferten Compile-und Link-Bätchen erwartet.. die gehen von "einfachen" Pfaden wie c:\test\cplusplus aus.
Entweder:
- alles in einen "einfachen" Pfad uminstallieren oder
- in den *.bat/*.cmd-Dateien alle vorhandenen Pfad-Parameter in Anführungszeichen setzen.
HTH Biber
ist ja eigentlich nicht mein Fachgebiet, aber ein paar Tipps versuch ich trotzdem.
a) Die Include-Dateien bei C/C++ heißen *.h (wie Header) am Ende. Die Standard-Header-Dateien sind auch im üblichen Standard-Include-Verzeichnis des Compilers - im Suchpfad sozusagen.
Wenn das so ist und eine Standard-Header-Datei wie iostream.h benötigt wird, dann schreibt man/frau:
#include <iostream.h>
bedeutet: ziehe eine Include-Datei aus dem "normalen" Include-Verzeichnis an
Wenn später mal eigene *.h-Dateien dazukommen in Projekten oder Anwendungen, werden diese meist in eigene Verzeichnisse oder Unterverzeichnisse gelegt.
#include "meineErste.h" Schreibweise: in Anführungszeichen bedeutet: nicht aus dem Include-Verzeichnis
#include "c:\spezielles\cpp\include\Zweite.h" // ...sondern aus dem aktuellen; aus relativ oder absolut genannten Verzeichnissen
b) Spitze Klammern gehören nicht nur bei C-Source zu den Sonderzeichen, sondern auch in HTML, mit dem hier die Seiten aufgebaut werden.
Dummerweise wird alles, was sich innerhalb von spitzen Klammern befindet, als HTML-Tag (meinetwegen zu übersetzen mit Formatierungs- oder Strukturierungsanweisung) interpretiert und ist eben "nicht zu sehen".
Also müsst ihr beim Posten von C-Code die spitzen Klammern "maskieren" (als Sonderzeichen kenntlich machen)
Für Spitze-Klammer-Auf ("<") müsst ihr "&<dummy>lt" schreiben
für Spitze-Klammer-Zu (">") müsst ihr "&<dummy>gt" schreiben.
-oder-
ihr ersetzt im Source-Code die spitzen Klammern durch runde Klammern und erwähnt das auch im Posting.
c) Ob die Hello-World-Demo vom Typ void() oder vom Typ int() ist, hängt vom Programmierer ab.
Wenn sie vom Typ int() ist, muss sie einen Integer-Rückgabewert haben, so wie oben den "return (0);"
Wenn sie vom Typ void() ist, darf sie keinen Rückgabewert haben (denn void heißt eben "ohne Rückgabewert").
Ist also beides "richtig" oben.
d) @admin
Du hast vermutlich kein Problem im Kompiler, sondern außerhalb.
Du hast den Kompiler in einem Verzeichnis installiert, der Leerzeichen enthält ("c:\Dokumente und bla...\...\Eigene Dateien\..")
Das wied eventuell nicht in den mitgelieferten Compile-und Link-Bätchen erwartet.. die gehen von "einfachen" Pfaden wie c:\test\cplusplus aus.
Entweder:
- alles in einen "einfachen" Pfad uminstallieren oder
- in den *.bat/*.cmd-Dateien alle vorhandenen Pfad-Parameter in Anführungszeichen setzen.
HTH Biber
Ok..
wie war das mit .. "nicht dein Fachgebiet" ?
obwohl ich mich ein wenig mit c++ auskenne, habe ich persönlich noch nie den unterschied zwischen void und main verstanden .. Danke =)
Gleich mehrere Sachen dazugelernt .
Dann noch nen schönen Tag ..
mfg cerbix
wie war das mit .. "nicht dein Fachgebiet" ?
obwohl ich mich ein wenig mit c++ auskenne, habe ich persönlich noch nie den unterschied zwischen void und main verstanden .. Danke =)
Gleich mehrere Sachen dazugelernt .
Dann noch nen schönen Tag ..
mfg cerbix
Hat sich eigentlich jemand schon mal damit beschäftigt, wie man in Dev-C++ *.dll Bibliotheken einbindet?
Ich habe irgendwie sehr lange nach solchen Optionen gesucht und hab es nich geschafft, denn bei mir kommen da viel zu viele (genau 200) Fehler und zwar nicht in meinem Code, sondern in der Header-Datei, die ich darür einbinden muss.
Das liegt daran, dass die entsprechende Bibliothek nicht gefunden werden kann, soweit kenn ich schon die Lösung, aber ich weiß nicht, wie man diese gewisse Bibliothek dort zum Einbinden bereitstellt wo es getan werden muss.
Ich habe irgendwie sehr lange nach solchen Optionen gesucht und hab es nich geschafft, denn bei mir kommen da viel zu viele (genau 200) Fehler und zwar nicht in meinem Code, sondern in der Header-Datei, die ich darür einbinden muss.
Das liegt daran, dass die entsprechende Bibliothek nicht gefunden werden kann, soweit kenn ich schon die Lösung, aber ich weiß nicht, wie man diese gewisse Bibliothek dort zum Einbinden bereitstellt wo es getan werden muss.
@WhiteMike:
Hast Du http://www.spacejack.org/games/mingw/mingw-dx.html gelesen? Bezieht sich auch den MingW32-Compiler, der als Default bei Dev-Cpp eingestellt ist.
Bibliotheken stehen da, wo sie immer bei C/C++-Projekten stehen - im Library-Path.. kannst Du auch nach wie vor als Compiler/Linker-Optionen mitgeben. Was meinst Du mit den "200 Fehlermeldungen im Header"? Doch jetzt aber nicht die "Deprecated"-Warnungen, oder? Welches Projekt kompilierst Du denn?
@admin
Sorry, muss meine vorschnelle Ferndiagnose korrigieren:
Hattest vollkommen recht mit Deiner Vermutung - die Compiler-Option "-fdollar-in-identifiers" funktioniert laut Doku NICHT unter GCC 3.2
Und somit natürlich nicht mit dem voreingestellten Ming32W-Compiler. Setze die Compiler-Parameter einfach wieder alle auf "Standard" (dafür gibts einen Button unter Werkzeuge-Compileroptionen). Oder stelle unter "Compileroptionen"-"Einstellungen" die Option "$ (in Identifiers) zulassen" wieder auf "No". Sind doch eh keine $s drin in Identifiers
HTH Biber
Hast Du http://www.spacejack.org/games/mingw/mingw-dx.html gelesen? Bezieht sich auch den MingW32-Compiler, der als Default bei Dev-Cpp eingestellt ist.
Bibliotheken stehen da, wo sie immer bei C/C++-Projekten stehen - im Library-Path.. kannst Du auch nach wie vor als Compiler/Linker-Optionen mitgeben. Was meinst Du mit den "200 Fehlermeldungen im Header"? Doch jetzt aber nicht die "Deprecated"-Warnungen, oder? Welches Projekt kompilierst Du denn?
@admin
Sorry, muss meine vorschnelle Ferndiagnose korrigieren:
unrecognized option `-fdollar-in-identifiers'
zurück zu dev-C++, muss ich da vlt den compiler Einstellungen ändern ???
zurück zu dev-C++, muss ich da vlt den compiler Einstellungen ändern ???
Und somit natürlich nicht mit dem voreingestellten Ming32W-Compiler. Setze die Compiler-Parameter einfach wieder alle auf "Standard" (dafür gibts einen Button unter Werkzeuge-Compileroptionen). Oder stelle unter "Compileroptionen"-"Einstellungen" die Option "$ (in Identifiers) zulassen" wieder auf "No". Sind doch eh keine $s drin in Identifiers
HTH Biber