Was macht ihr so für Projekte in C?
-
Hi,
ich lerne gerade C und habe die nächsten Monate zu 100% Freizeit(krank). Mich würde interessieren was ihr so für Projekte in C macht?
-
Ehrlich gesagt: Außer Beispielprogramme für das Forum, keine. Wenn man C++ genau so gut (oder bei mir sogar eher besser) kann, dann gibt es irgendwie keinen Grund, jemals etwas in C zu machen. In seltenen Fällen bin ich gezwungen, Code zu verändern, der schon in C geschrieben ist, aber da habe ich eben keine freie Wahl.
-
Oh ok, na wenn man C++ kann warum soll man C machen, verstehe. Ich habe selbst mal gesucht und es scheinen unheimlich viele Leute unter Mikrocontroller.net mit C zu programmieren und auch Leute die Betriebssysteme schreiben nehmen C. Windows und Linux sind wohl auch in C programmiert wenn ich das richtig verstanden habe.
-
Wasmachen schrieb:
Ich habe selbst mal gesucht und es scheinen unheimlich viele Leute unter Mikrocontroller.net mit C zu programmieren ...
Das hängt aber auch sehr stark von dem verwendeten Controller ab. die kleinen µC haben halt nicht so viel Resourcen für C++. Vielen fehlt auch eine vernünftige dynamische Speicherverwaltung.
Und wenn du darauf bei C++ Verzichten musst, kannst du gleich bei C bleiben.Wasmachen schrieb:
... und auch Leute die Betriebssysteme schreiben nehmen C. Windows und Linux sind wohl auch in C programmiert wenn ich das richtig verstanden habe.
Das mag auch am Alter bzw. der Herkunft der Betriebsysteme liegen.
-
Ich glaube nicht, dass Leute nur C programmieren weil es für ihre Plattform keinen C++-Compiler gibt.
-
tobeontop schrieb:
Ich glaube nicht, dass Leute nur C programmieren weil es für ihre Plattform keinen C++-Compiler gibt.
Manche Leute können kein C++, aber C. Andere Leute mögen C++ nicht und für kleine Mikrocontroller-Programme ist der Unterschied zwischen einem Programm in C++ und C auch bestenfalls marginal.
Bei der Vielzahl an Mikrocontroller kann man auch nicht davon ausgehen, dass es einen C++-Compiler für jeden Controller gibt.
Da die Mikrocontroller-Software direkt auf der Hardware läuft (im Gegensatz zu Prozessen unter herkömmlichen Betriebssystemen) musst man mit C++ auch ein wenig aufpassen, z.B. Exceptions.
Für zeitkritische Abschnitte muss man auch ehrlich sagen, dass man es mit C leichter hat. Da kann man nichts verstecken, z.B. teure (Kopier-)Konstrukturaufrufe.
Erlernt hat man C natürlich auch in deutlich weniger Zeit als C++.
Für größere Sachen, also mit Betriebssystem, wird heutzutage schon C++ eingesetzt statt C. Auch im Embedded Bereich.
-
Hier gibt es ja ein Betriebssystemprojekte, das wird in C++ entwickelt?
Auf Mikrocontroller.net habe ich nicht viele Projekte gefunden die in C++ gemacht werden.
-
[quote="Tipggeber"]
tobeontop schrieb:
Erlernt hat man C natürlich auch in deutlich weniger Zeit als C++.
Seh ich genauso, C++ ist komplizierter, dafür ist es aber wesentlich strukturierter und vermutlich auch im Coding effezienter als C.
Ich favorisiere selbst jedoch immer noch C