Für welche Programme nutzt ihr C?



  • Ich benutz es nur, wenn ich beruflich dazu gezwungen werde.

    Ansonsten nur C++.



  • Paradigma1 schrieb:

    Wofür sollte ich's denn lieber nicht verwenden?
    Also ich nehm's für alles her, auch für größere Anwendungen.
    Passt doch hoffentlich so, ...?
    🤡
    mfg

    Solange Du es schaffst Memory-Leak freien Code zu schreiben passt das.
    Nur als ich mein letztes "größeres" Projekt mal von C zu C++ portiert habe, sind von ~2k Zeilen nur noch ~750 übrig geblieben. Seit dem habe ich es entgültig aufgegeben viel mit C zu machen :p



  • So ein Stuss, Broken by Design Fehler sind sehr viel schlimmer und schwieriger aufzufinden als MemoryLeaks. Es gibt so viel große C Software die "sicher" und stabil laufen wie z.B Linux, Windowskernel, SQlite, Ngix, Gimp, Gnome. Das reicht eigentlich schon um zu zeigen das C sehrwohl auch aktuell für große und sichere Anwendungen in 2011 geeignet ist.

    Wer unbedingt OOP braucht(was eh nur in großeren Teams und/oder Projekten Sinn macht) dann ist dort ObjektiveC weit aus besser geeignet als der zusammengedischte Sprache C++.


  • Mod

    Wer glaubt, dass C++ gegenüber C nur OOP bietet (und naive Vorstellungen über den Nutzen von OOP hat) sollte lieber ganz still sein.

    Muss eigentlich jeder Thread, in dem C und C++ gleichzeitig erwähnt werden, so enden? Hätte man nicht einfach die Frage des Threaderstellers ehrlich beantworten können?



  • Auch wenn ich mit C meine C++-Karriere quasi begonnen habe, nutze ich es mittlerweile gar nicht mehr. Ich glaube, wenn ich jetzt sofort eine Anwendung in reinem C schreiben müsste, ich würde haufenweise Syntax-Fehler machen und müsste erstmal einige Dinge nachlesen :D.
    Das hat nix damit zu tun dass das eine oder das andere "schlecht" ist, sondern nur mit Gewöhnung 🤡.



  • Ich benutze Ansi C (incl. WinAPI) für Tools, die auf WinCE 4-6 laufen müssen.
    Daneben mache ich noch ein paar Dinge mit VB Express...
    In beiden Sachen bin ich aber eher noch Laie... 🙂



  • SeppJ schrieb:

    Muss eigentlich jeder Thread, in dem C und C++ gleichzeitig erwähnt werden, so enden? Hätte man nicht einfach die Frage des Threaderstellers ehrlich beantworten können?

    Die Frage die ich mir stelle: Warum reden hier alle von C++? Die einfache Frage nicht verstanden?



  • Tim schrieb:

    Die Frage die ich mir stelle: Warum reden hier alle von C++?

    Naja, mach mal nen Thread auf und start ne Umfrage wer welches Öl für seine Lampen verwendet. Von ein paar Einsiedlern abgesehen werden da auch schnell Leute anfangen von dieser "Elektrizität" zu reden...Teufelszeug...



  • Was in einem Öllampen-Unterforum auch genauso off-topic wäre. Was war gleich dein "Argument"? Außer unsachlichem Geflame sehe ich nichts.



  • Das prozedurale C ist um 48.41% schneller als das objektorientierte C++.
    Steht so in der wikipedia, also muss es wohl so sein.
    Zitat:

    Die Effektivität des Laufzeitverhaltens von Anwendungen, die auf OOP-Techniken basieren, wird seit jeher kontrovers diskutiert. Alexander Chatzigeorgiou von der Universität Makedonien verglich die Laufzeiteffektivität und die Energieeffizienz von typischen Algorithmen (Gauß-Jordan-Algorithmus, Trapez-Integration und QuickSort) von prozeduralen Ansätzen und OOP-Techniken, implementiert als C- und C++-Software. Auf dem verwendeten ARM-Prozessor ergab sich für drei Algorithmen im Mittel eine um 48,41 % bessere Laufzeiteffektivität mit den prozeduralen C-Algorithmusvarianten. Es ergab sich außerdem eine im Mittel um 95,34 % höhere Leistungsaufnahme der C++-Varianten zu den C-Varianten.[8] Für Anwendungen auf mobilen Geräten, wie Handys oder MP3-Spielern mit begrenzten Leistungs- und Energiespeichervermögen, sind diese Unterschiede signifikant. Als Grund für den Unterschied in Effektivität und Energieeffizienz werden in dem Artikel generelle Abstraktions-Leistungseinbußen und die deutlich größere Anzahl von Zugriffen auf den Arbeitsspeicher durch OOP-Techniken genannt.

    Also wenn das so ein Fachmann von der Uni professionell getestet hat, dann
    brauchen wir Trolle und Laien hier im Forum nicht mehr groß über diese
    Tatsache zu diskutieren, es ist ja hier von einem Uni-Experten gewiss
    professionell getestet worden.

    Deshalb nehm' ich auch lieber reines C her, weil ja die Anwendern nur in
    den Genuss hoch-optimierter Programme und Module kommen sollen (wäre ja
    furchtbar, wenn man als Anwendern nur noch auf grob sub-optimale
    und schneckenlangsame C++ Programme zurückgreifen könnte ...)
    Die Anwender haben sich nämlich nur die beste Qualität verdient, und
    die produziert man nunmal schon seit über 40 Jahren nur in C ... jedermann
    mit einem Minimum an technischen Knowhow weiß das sowieso,
    dass C performancemäßig der Ferrari, und C++ die Pferdekutsche unter den
    Programmiersprachen ist.

    mfg 😃



    Die Effektivität des Laufzeitverhaltens von Anwendungen, die auf OOP-Techniken basieren, wird seit jeher kontrovers diskutiert. Alexander Chatzigeorgiou von der Universität Makedonien verglich die Laufzeiteffektivität und die Energieeffizienz von typischen Algorithmen (Gauß-Jordan-Algorithmus, Trapez-Integration und QuickSort) von prozeduralen Ansätzen und OOP-Techniken, implementiert als C- und C++-Software. Auf dem verwendeten ARM-Prozessor ergab sich für drei Algorithmen im Mittel eine um 48,41 % bessere Laufzeiteffektivität mit den prozeduralen C-Algorithmusvarianten. Es ergab sich außerdem eine im Mittel um 95,34 % höhere Leistungsaufnahme der C++-Varianten zu den C-Varianten.[8] Für Anwendungen auf mobilen Geräten, wie Handys oder MP3-Spielern mit begrenzten Leistungs- und Energiespeichervermögen, sind diese Unterschiede signifikant. Als Grund für den Unterschied in Effektivität und Energieeffizienz werden in dem Artikel generelle Abstraktions-Leistungseinbußen und die deutlich größere Anzahl von Zugriffen auf den Arbeitsspeicher durch OOP-Techniken genannt.
    *
    ... BEWEIS ...



  • Quicksort oder Gauss-Jordan implementiert in C++ niemand objektorientiert, also ist die Studie eine Bestätigung dessen, was sowieso alle schon wussten.



  • Ich benutze C ebenfalls für eine Raytracing-Simulation.

    Sonst benutze ich C wenn ich Mikrocontroller programmiere.(µC)

    Gerade im Mikrocontroller-Bereich ist C nach wie vor sehr wichtig, denn die meisten Mikrocontroller kennen kein C++. :p



  • Die meisten Prozessoren kennen kein C++. Aber auch kein C.
    Dafür gibt es schließlich die Compiler.

    [Lagerfeuer]
    Damals gab es für den Amiga einen C++ nach C-Compiler.
    Programmierer, die einen C++ Compiler programmieren konnten waren selten.
    [\Lagerfeuer]



  • Etwas C für mein 8bit-Microcontroller Projekt. 🙂
    Ansonsten hacke ich gern etwas an Wine rum, das muss (leider) auch in C geschehen sowie kleinere Linuxkernel-Mods.

    Ansonsten sieht es so aus dass ich gleich Python nehme, wenn das nicht geht schreibe ich per Boost.Python in C++ ein passendes Modul und mache es trotzdem in Python. 😉



  • SeppJ schrieb:

    Muss eigentlich jeder Thread, in dem C und C++ gleichzeitig erwähnt werden, so enden? Hätte man nicht einfach die Frage des Threaderstellers ehrlich beantworten können?

    Geht hier im Forum ganz offensichtlich nicht. Für viele stehen nicht die zu lösenden Aufgaben im Mittelpunkt des Interessen, sondern allein die allgemeinen Hilfsmittel und Methoden, die man dafür einsetzen kann. Ich sage mal ganz salopp: "Dem Schweinebraten ist es egal, ob er auf einem Gasherd, Elektroherd, Ceranfeld, oder Induktionsherd zubereitet worden ist!" Hauptsache, der Koch versteht sein Handwerk und kann mit dem gerade vorhandenen Gerät umgehen.

    Ach wie war es doch zudem mit ASSEMBLER, FORTRAN, C und C++ so bequem! Nahezu religiös anmutende Diskussionen sind etwas neues in der Programmierung geworden und helfen niemand! 😃 daddeldu! :p



  • berniebutt schrieb:

    Ich sage mal ganz salopp: "Dem Schweinebraten ist es egal, ob er auf einem Gasherd, Elektroherd, Ceranfeld, oder Induktionsherd zubereitet worden ist!"

    Ich finde es etwas schräg, dass du in der Situation die Perspektive des Schweins einnimmst statt die des Kochs oder des Gastes. Aber jedem das seine.



  • Fragefragen schrieb:

    Hallo,

    mich würde mal interessieren für welche Programme ihr so die Programmiersprache C einsetzt. Ich persönlich will jetzt einen kleinen Raytracer in C schreiben, was macht ihr so in C?

    Ich benutze C nur noch als Hilfsmittel für Fortran oder C++, d.h. wenn Unterroutinen und Wrapper sich leichter in C formulieren lassen. Ansonsten werden anderen Sprache je nach Aufgabefeld bevorzugt.



  • Mich würde mal interessieren warum viele Opensource/Freesoftware Programme (insbesondere GNU also nicht nur die Standardutils sondern auch umfangreiche Sachen wie GIMP und GNOME) in C geschrieben sind? Ist das nur, damit man sie auch auf exotischen Maschinen kompilieren kann? Oder sind die einfach nur masochistisch?



  • mazal schrieb:

    Oder sind die einfach nur masochistisch?

    ich denk, auch wenn das nie jemand öffentlich zugeben würde, steckt da sicher ein fünkchen wahrheit drin 😃

    aber c ist auch eine der einfacheren sprachen, daher leicher erlernbar und somit findest viele, die an deinem projekt mitarbeiten können/wollen!


Anmelden zum Antworten