Für welche Programme nutzt ihr C?



  • 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?


  • Mod

    Ehrlich gesagt: Produktives gar nicht, dafür gibt es schließlich C++. C mach ich nur zum Spaß.



  • Ehrlich gesagt: Produktives gar nicht, dafür gibt es schließlich C++. C mach ich nur zum Spaß.

    👍

    Früher halt zum lernen..



  • 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?

    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



  • 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


Anmelden zum Antworten