Vorbildlicher C-Code



  • Hi,

    gibt es Beispiele für sehr schönen C-Code im Netz? Irgendein Wettbewerbssieger oder GPL-Code, der eurer Ansicht nach besonders vorbildlich ist? Möglichst einwandfreies ANSI und mehr als nur ein paar Zeilen. Ich meine weniger Algorithmen (z. B. Implementierung von Quicksort) sondern "alltäglichen" hervorragenden Code.

    Beste Grüße vom Lufti



  • hmm jeder code der mit -wall und ansi c compiliert wird gg. manche machen sich die mühe ;-). Oder meinst best practis beispiele, also mit doku, naje da gibts dann nur ganz wenige (akandemische ansätze)



  • Du wirst kein Glück haben. C ist ja inzwischen hoffnungslos veraltet. Wenn Du Leute findest, die C ohne Not noch aus Überzeugung betreiben, kannst Du sie normalerweise nicht ernst nehmen. Mit Sicherheit haben sie drei oder vier Generationen der weiteren Abstraktion und Begriffsbildung verpaßt. Es gibt noch Sparten für kommerzielles C, aber wo der Arbeitgeber mit Recht C vorschreibt, ist der Code auch closed. Die große Zeit für C und sauberen C-Code war damals bevor man alles Mögliche im Internet veröffentlicht hat. Ist leider >20 Jahre her und die alten Quellen sind nur sehr schwer zu im Internet finden, falls überhaupt.



  • Würde ich gar nichtmal so sagen. Im Mikrocontroller-Bereich wird zumeist noch mit C gearbeitet.



  • Volkard muss man in solchen Diskussionen nicht ernst nehmen.



  • Genmutant schrieb:

    Würde ich gar nichtmal so sagen. Im Mikrocontroller-Bereich wird zumeist noch mit C gearbeitet.

    Ist der Code da offen?



  • Lufti3000 schrieb:

    Möglichst einwandfreies ANSI und mehr als nur ein paar Zeilen.

    Du kannst Lua lesen wenn du sonst nichts findest. Ist eine eher saubere Sache.

    Lufti3000 schrieb:

    gibt es Beispiele für sehr schönen C-Code im Netz?

    Hmm. Was ist schon schön?

    Emacs is written in Lisp, which is the only computer language that is beautiful.

    🙂



  • volkard schrieb:

    Genmutant schrieb:

    Würde ich gar nichtmal so sagen. Im Mikrocontroller-Bereich wird zumeist noch mit C gearbeitet.

    Ist der Code da offen?

    Es gibt zuhauf offene Projekte da. Aber die würde ich nicht nach gutem C-Code durchsuchen wollen 😉



  • volkard schrieb:

    Du wirst kein Glück haben. C ist ja inzwischen hoffnungslos veraltet. Wenn Du Leute findest, die C ohne Not noch aus Überzeugung betreiben, kannst Du sie normalerweise nicht ernst nehmen. Mit Sicherheit haben sie drei oder vier Generationen der weiteren Abstraktion und Begriffsbildung verpaßt. Es gibt noch Sparten für kommerzielles C, aber wo der Arbeitgeber mit Recht C vorschreibt, ist der Code auch closed. Die große Zeit für C und sauberen C-Code war damals bevor man alles Mögliche im Internet veröffentlicht hat. Ist leider >20 Jahre her und die alten Quellen sind nur sehr schwer zu im Internet finden, falls überhaupt.

    na? war's diesmal 'ne ganze flasche aldi-whisky? (ach nee, ich glaub du stehst auf rum) *fg*
    🙂



  • C wird in einem C-Forum von einem Mod geflamt. Irgendwas geht hier richtig schief.

    Ich hab das hier gefunden: http://www.sourcecodesworld.com/source/LanguageHome.asp?LangId=1

    Da gibt es Projekte in C nach Kategorien geordnet, vielleicht findest du ja was was dir gefällt.

    Schön und nicht schön ist leider Ansichtssache, gibt da verschiedene Ansätze die nicht miteinander kompatibel sind.



  • Tim schrieb:

    Es gibt zuhauf offene Projekte da. Aber die würde ich nicht nach gutem C-Code durchsuchen wollen 😉

    Stimmt. Man kann auch in Sourceforge den Filter auf "C" setzen, aber das meiste ist Schutt. Ich hab' mir öfters mittels libs ins Knie geschossen, die ich von dort geholt habe, weil sie einfach Macken hatten und Fehlersuche in Fremdcode selten lustig ist, hätt' ich besser gleich selber geschrieben.
    Ist aber ganz logisch, wenn ich mal an eigenen alten Code ran muß, gefällt er mir nach ein paar Jahren meist nicht mehr 😞 , weil man sich ja auch selber weiterentwickelt.
    Wichtig ist, dass man frühzeitig ein Benennungsschema, Indentingschema und Typenbezeichnungsschema findet, das man auch durchhält und womöglich nicht konträr zu jeder Konvention läuft.
    Der nächste Schritt ist, daß man Probleme auf Programmiertechniken zu abstrahieren lernt.
    Über diese genannten Punkte läßt sich ebenso umfangreich wie sinnlos debattieren - Schönheit liegt im Auge des Betrachters, da herrscht mehr Einigkeit darüber, was Gruselcode ist 😮

    nwp2 schrieb:

    C wird in einem C-Forum von einem Mod geflamt. Irgendwas geht hier richtig schief...

    Achso, er ist Mod im C++- Unterforum und hier privat 'ne offene Hose. Ich finde zwar, daß 'nem Mod auch in anderen Unterforen so 'ne Rolle nicht gut zu Gesicht steht, aber weil er an guten Tagen manchmal sogar hilft, sehen wir ihm das C- gebashe einfach nach. :xmas2:

    ;fricky schrieb:

    na? war's diesmal 'ne ganze flasche aldi-whisky? (ach nee, ich glaub du stehst auf rum) *fg*
    🙂

    Hihi 😃 . Merke: Wer malloc() castet und besoffen in C-Foren rumpöbelt ist wahrscheinlich so enthemmt, daß er in C++ programmiert ... 🤡



  • nwp2 schrieb:

    C wird in einem C-Forum von einem Mod geflamt. Irgendwas geht hier richtig schief.

    Ein Freund der freien Zensur?

    pointercrash() schrieb:

    wenn ich mal an eigenen alten Code ran muß, gefällt er mir nach ein paar Jahren meist nicht mehr 😞

    Stimmt, das ist ärgerlich. Ich hab mir dieses Jahr angewöhnt, die alten Codes mal in einem stinknormalen Texteditor ohne Syntaxhighlighting und Indentation Guides udgl. anzusehen, und wenn er dort wild aussieht, war's der falsche Stil.

    pointercrash() schrieb:

    Merke: Wer malloc() castet und besoffen in C-Foren rumpöbelt ist wahrscheinlich so enthemmt, daß er in C++ programmiert ... 🤡

    Hmm, passiert mir manchmal, dass ich spät mit einer Fahne heimkomme, und trotzdem nicht müde bin und nicht schlafen muss. Und wenn man zu besoffen für den Debugging-Stack ist, muss man eben im Internet für die Verbreitung des Christentums kämpfen. Aber malloc() caste ich nicht, es ist noch Hoffnung!
    🙂



  • µngbd schrieb:

    nwp2 schrieb:

    C wird in einem C-Forum von einem Mod geflamt. Irgendwas geht hier richtig schief.

    Ein Freund der freien Zensur?

    Was hat denn das mit Zensur zu tun? Das C-Forum ist dazu da sich über C auszutauschen. Wer schreibt dass C generell scheiße ist und alle die C benutzen auch, der trägt einfach nichts zum Forum bei und sollte einfach das C-Forum komplett meiden.
    Mods wiederum sind dazu da das Forum vor Leuten wie volkard zu schützen indem sie solche dummen Flameposts kommentarlos löschen, weil sie zu diesen endlosen Diskussionen über den Sinn und Unsinn von C führen die mit dem Thema (ich erinnere: Es geht hier um vorbildlichen C-Code) nichts zu tun haben.
    Irgendwie passt ein Mod der in seinem eigenen Forum rumflamt nicht in mein Weltbild. Aber vielleicht habe ich auch nur komische Ansichten.
    Von mir aus soll volkard ein neues Thema aufmachen "C ist doch scheiße wieso benutzt ihr es?", aber Leuten die nett um Hilfe fragen die Antworten zu versauen ist schon reichlich mies und einem Mod darf sowas nicht passieren.



  • Hehe Censur :xmas1:

    Leute, es ist nur eine Programmiersprache. Entweder taugt der Algorythmus nichts
    oder er taugt etwas. Wie man das realisiert ist Wurscht (solange man kein ++ benutzt).



  • Du solltest die Policei holen.

    nwp2 schrieb:

    indem sie solche Flameposts kommentarlos löschen

    Ja, wundert mich, daß das nicht passiert ist.

    Ich warte gespannt auf Links zu vorbildlichem Code.
    Du hast ja http://www.sourcecodesworld.com/source/LanguageHome.asp?LangId=1 gepostet. Da klicke ich auf C und finde TSR. http://www.sourcecodesworld.com/source/BrowseCategory.asp?CatId=47
    Daumen hoch. Ein Schelm, wer sich dabei an meinen Beitrag erinnert. :xmas2:



  • nwp2 schrieb:

    ... Wer schreibt dass C generell scheiße ist und alle die C benutzen auch, der trägt einfach nichts zum Forum bei und sollte einfach das C-Forum komplett meiden.
    Mods wiederum sind dazu da das Forum vor Leuten wie volkard zu schützen indem sie solche dummen Flameposts kommentarlos löschen, ...

    Ach, nimm' das nicht zu ernst. Hier waren früher Mods unterwegs, die ganz fleißig im Thread- closen waren, dann waren's halt mehr Threads und für einen OT- Post gleich 'nen Holzhammer drüberzubekommen ist halt auch etwas humorlos.

    nwp2 schrieb:

    Irgendwie passt ein Mod der in seinem eigenen Forum rumflamt nicht in mein Weltbild.

    Aber lies doch, er ist im C++- Unterforum Mod, hier nur privat.

    nwp2 schrieb:

    aber Leuten die nett um Hilfe fragen die Antworten zu versauen ist schon reichlich mies und einem Mod darf sowas nicht passieren.

    Erstmal war das eine Dödelfrage, die zum flamen einlädt, zweitens hilft er bei konkreten Fragen meistens auch konkret.
    Ich bin zwar auch der Meinung, daß ein Mod eine gewisse Vorbildfunktion - auch im allgemeinen Ton - ausfüllen sollte, aber manche Menschen brauchen halt einen "sportlichen Ausgleich", wenn sie von der Muddi dreimal zum Müll runterbringen geschickt wurden. 😉
    Nimm's locker :xmas1:



  • nwp2 schrieb:

    Mods wiederum sind dazu da das Forum vor Leuten wie volkard zu schützen indem sie solche dummen Flameposts kommentarlos löschen, weil sie zu diesen endlosen Diskussionen über den Sinn und Unsinn von C führen die mit dem Thema (ich erinnere: Es geht hier um vorbildlichen C-Code) nichts zu tun haben.

    Wenn es dir gelingen würde, den Humor zu verbieten: warum sollte ich dann noch hier vorbeischauen? Manchmal wird's halt ein wenig derb, aber hey! so ist das Leben. 🙂 Zum Glück führt der rüdi ein eher lockeres Regime hier, und die anderen beiden sind eh nie da.



  • Scheppertreiber schrieb:

    Leute, es ist nur eine Programmiersprache. Entweder taugt der Algorythmus nichts
    oder er taugt etwas. Wie man das realisiert ist Wurscht

    sehe ich ähnlich. guter code ist schlank, direkt und einfach, gut lesbar und verständlich. er macht keine unnötigen faxen wie überflüssige speicherallokation (hallo nwp2 *fg*), sinnlose kopien, mehrfache berechnung bereits bekannter werte, usw...

    Scheppertreiber schrieb:

    (solange man kein ++ benutzt).

    ja, ich weiss schon wie du das meinst *fg*, aber zum inkrementieren noch das: in for-schleifen hinten ein ++i anstatt i++ finde ich z.b. daneben.

    btw, der linux-kernel beinhaltet qualitativ hochwertigen C-code. ebenso der windoows-kernel (wenn ihr etwas googled, findet ihr vielleicht noch die geleakten NT4-sources).
    🙂



  • 'tschuldigung Fricky, wie konnte ich nur ... das ist das gute ++



  • Scheppertreiber schrieb:

    'tschuldigung Fricky, wie konnte ich nur ... das ist das gute ++

    the good (i++), the bad (++i), and the ugly (C++) *fg*
    🙂



  • Zeit für 'was Neues: ++C-- (alle Vor-, Nach- und Fehlurteile) 😉 😉 😉


Anmelden zum Antworten