C versus C++
-
wtf? Ich kann unangemeldet etwas schreiben?

Also, meine Frage:
Ich brauche professionelle Hilfe, und zwar geht es darum, dass ich nicht weiß, was ich benutzen soll..C oder C++ stdio.h oder iostream [printf"" oder cout<<] FILE = fopen oder ofstream.openWas ist schneller, was ist besser, was ist effizenter?
Ich müsste das dringend wissen, weil ich am überlegen bin, was ich benutzen soll ._.
Falls diese Frage dumm, sinnfrei oder sonstiges schlechtes sein sollte, flamed bitte nicht herum, sondern macht mich nur drauf aufmerksam...
Danke ^^''
-
Deine Frage ist nicht dumm, sie baut nur auf der falsche Vorstellung auf, dass diese Sachen in Stein gemeißelt sind.
Es steht aber vielmehr nur geschrieben, was fopen und co tuen sollen, nicht wie sie es machen. Daher ist die Frage sinnfrei, denn iostream kann bei Compiler A durchaus mit fopen Aufrufen realisiert sein und bei Compiler B ist es umgekehrt.
Zum Lernen von OOP würde man natürlich eher zu der C++ Variante raten.
-
Die Frage ist so wenig sinnvoll. Man kann in C schnelle Programme schreiben. Man kann in C++ schnelle Programme schreiben. Man kann in C langsame Programme schreiben. Man kann in C++ langsame Programme schreiben.
Die Ein/Ausgabe dürfte in etwa gleich schnell sein. Womöglich hat C nen kleinen Vorsprung, vielleicht aber auch nicht. Vielleicht ärgerst Du Dich aber auch und bringst viel Zeit damit zu falsche Formatstring von printf zu reparieren. Etwas das in C++ kein Problem ist.
Generell hängt die Wahl der richtigen Sprache auch vom Projekt ab. "ich will was programmieren, was soll ich benutzen?" ist nicht detailliert genug um ne vernünftige Entscheidung zu treffen. Alle die trotzdem ne Sprache vorschlagen haben als Gründe wohl hauptsächlich persönliche Vorlieben.
Nimm Java.
-
Ehm, aber format strings sind verdammt leistungsstark. Ohne kann ich net.
-
sdfdsfdsf schrieb:
Ehm, aber format strings sind verdammt leistungsstark. Ohne kann ich net.
Jester schrieb:
Alle die trotzdem ne Sprache vorschlagen haben als Gründe wohl hauptsächlich persönliche Vorlieben.
-
Also C ist schneller, da es kein OOP-Ballast mitliefert.
-
Du kannst in C++ jederzeit die C i/o Bibliothek benutzen, umgekehrt geht das nicht.
Somit hast du deine Formatstring immernoch wenn du diese unbedingt brauchst.Allerdings wird dir jeder C++ler raten boost::format zu nehmen, das hat die Formatstring-Syntax von C (und noch ein paar andere) und ist typsicher

-
professionelle Hilfe
http://www.rzbt.haw-hamburg.de/dankert/ccppjava.html/
Das Ziel sollte in jedem Fall die objektorientierte Programmierung sein, und wenn nicht spezielle Gründe für eine andere Entscheidung sprechen, dann lerne man unter Benutzung einer modernen Entwicklungsumgebung C++.
-
C++-lover schrieb:
C vs C++ interessiert doch keinen.
Nur ganze Industriesparten, aber sonst wirklich niemanden...
-
Traktorrrr schrieb:
Also C ist schneller, da es kein OOP-Ballast mitliefert.
wenn's darauf ankommt, kann man unter C++ wie in C programmieren und keinerlei OOP verwenden.
man mauss dann aber auch ständig der versuchung wiederstehen, den OOP-ballast nicht einzusetzen
-
C (oder eine C-ähnliche Sprache) wird oft bei der Programmierung von Microcontrollern eingesetzt (Roboter, Elektronik, ...). Ansonsten ist C++, wenn es gut gemacht wird, besser modular einsetzbar. Das ist vor allem in der GUI-Programmierung von Vorteil. Schau Dir mal www.codeproject.com an. Hier mal ein Beispiel: http://www.codeproject.com/cpp/ocarray.asp
I love Object-Oriented programming. And after 15 years of writing C programs, I'd be quite happy to code in C++ forever. Two of the things I love most are: templates and the const keyword.
-
Erhard Henkes schrieb:
I'd be quite happy to code in C++ forever.
das einzig beständige ist die unbeständigkeit
