Für welche Programme nutzt ihr C?



  • was wollen eig. die ganzen c++ trolle hier im c89/99 forum 😕



  • __-- schrieb:

    was wollen eig. die ganzen c++ trolle hier im c89/99 forum 😕

    Manche dieser C++ Trolle sind halt Mods im C Forum 😃



  • evtl. ist das jetzt falsch rübergekommen, aber wieso muss jeder thread im C(C89 und C99) subforum damit enden, dass c++ eh viel besser ist? da wären doch alle deppen, die msloc projekte in c entwickeln 🙄



  • diese häufigen c vs. c++ troll threads sind ja eigentlich ziemlich lustig
    zu lesen, aber ich hätte da mal einen Vorschlag:

    Sozusagen ein kleiner Wettbewerb der C-ler gg. die C++-ler, der für geübte
    Programmierer mit recht wenig Aufwand (beide Lager) lösbar sein müsste,
    und dann vergleichen wir mal die Quellcodes ganz objektiv:

    (1) Hatte der C- oder der C++ -Programmierer mehr Schreibaufwand?
    (2) Welche Version ist eher für leicht abgewandelte Aufgabenstellungen
    wiederverwendbar? Welche Teile davon?
    (3) Welche Version kommt mit unerwarteten Eingaben besser zu recht?
    (4) Welche Version macht oder verwendet mehr implizite Annahmen bezüglich
    auf einem Zielsystem vorhandener Bibliotheken, der Arbeitsweise eines
    speziellen Compiler- oder Betriebssystems?
    (5) Welche Version ist besser lesbar?
    (6) Welcher Algorithmus arbeitet theoretisch schneller, und welcher
    erweist sich bei Testläufen auf einem realen PC als schneller?
    (7) Dasjenige Lager, das zuerst 2 - deutlich unterscheidbare -
    Versionen bereitstellen kann, die die Spezifikation erfüllen,
    bekommt einen Extra-Punkt.

    Mitmachen soll jeder, der Zeit und Lust hat, ok?

    Also dann mal zur Problembeschreibung:
    - Eine ASCII-Textdatei enthält X Zeilen.
    - Jede Zeile enthält ausnahmslos Großbuchstaben (A - Z), in einer
    ziemlich zufälligen Reihenfolge, und endet jeweils mit newline.
    - Jede Zeile besteht jeweils aus gleich vielen Zeichen.
    - Mitten im Buchstaben-Salat sind mehrere Wörter 'versteckt', und zwar auf
    eine der folgenden 4 Arten, an Beispielen demonstriert:

    I) XKIIRLANDTRB\n |-> enthält 'Irland' (herkömmliche Leserichtung)

    II) TUXMAHUHCSFLIM\n |-> enthält 'Schuh' (rückwärts gelesen)

    III)
    FALURIYYWQPIKLIO\n
    TISSEBJFLLIKOLPH\n
    BNEAHCOPIZULAKRR\n |-> von oben nach unten gelesen wäre hier ein 'Reh'

    IV)
    FDLURIYYWQPIKLIO\n
    TNSSEBJFLLIKOLPH\n
    BUEAHCOPIZULAKRR\n
    IMLIRSKXAMODRIGC\n |-> von unten nach oben gelesen wäre hier 'Mund'

    Um's nicht zu kompliziert zu machen soll die Möglichkeit, Wörter diagonal
    zu verstecken, vorläufig noch nicht ins Auge gefasst werden (das als Hinweis
    darauf, dass es eines Tages doch fällig werden könnte ...(Wiederverwendbarkeit!)

    Spezifikation:
    Das Programm soll einen String von stdin einlesen und in Großbuchstaben
    konvertieren,
    dann die Datei öffnen, darin suchen, wie oft der String auf eine
    der vier skizzierten Arten versteckt wurde, und schließlich dem Anwender
    mitteilen, ob und wie oft der String in der Datei gefunden wurde, bzw.
    im Falle eines unerwarteten Fehlers darauf hinweisen und das Programm beenden.

    *** Na, wer immer sich zutraut, diese Aufgabe in C oder C++
    (je nachdem, was er besser kann) zu lösen, der wäre herzlich dazu eingeladen,
    sich daran zu versuchen.
    Die beiden ersten, weitestgehend funktionierenden, Vertreter sowohl von der
    C- als auch von der C++ Gilde können wir ja dann objektiv miteinander vergleichen (nach den oben erwähnten Kriterien) und dann hoffentlich ohne
    Geflamme! ***

    Fairer Vorschlag?

    (btw. bin selber gerade mit einer prinzipiell ähnlichen, allerdings auch
    erheblich komplexeren (Tahoma-Buchstaben in 4-Bit-Bitmaps finden)
    Aufgabenstellung beschäftigt, und werde deshalb einer möglichen Lösung nicht
    vorgreifen. Ihr könnt auch gerne darüber diskutieren, wie er an diese Aufgabe
    herangehen würdet, wenn er nur die Zeit und Lust dazu hättet ...

    MFG



  • Da C eine Untermenge von C++ darstellt erübrigt sich der Vergleich irgendwie..



  • Ja das stimmt du kannst C nicht komplett von C++ trennen, C++ ist ja keine wirklich eigene Sprache.

    Ich programmiere gerne mal was in C aber auch nur weils die meisten Programmierer verstehen und ich es auch schnell lernen konnte. C++ habe ich schon dreimal versucht ordentlich zu lernen, habe aber immer irgendwann die Lust verloren. Ist mir einfach zu komplex, auf was man da alles achten muss um keinen Mist zu coden ist nicht mehr schön.

    Für mich sind daher die C++ eher die Masochisten...


  • Mod

    cppiseinfachschwer schrieb:

    Für mich sind daher die C++ eher die Masochisten...

    Das kann man aber nicht sagen, wenn man nur eine der Sprachen kann. Die Beobachtung hier im Thread ist jedenfalls, dass Leute die beides können zu C++ neigen.



  • ja kann sein aber erstmal jahrelang lernen bis man C++ kann ist schon ziemlich heftig und vielen einfach zu lang.



  • gogogo schrieb:

    ja kann sein aber erstmal jahrelang lernen bis man C++ kann ist schon ziemlich heftig und vielen einfach zu lang.

    Naja... Als ob der Einstieg in C leichter ist als in C++, was definitiv nicht der Fall ist. Man darf halt nur nicht von C kommen und denken, dass C++ C ist mit mehr Features. Dann hat man verloren. Man muss schon den Standpunkt vertreten, dass C++ eine andere Sprache ist und dass diese auch von Anfang an gelernt werden muss. Ich kann diese von dir genannte These nicht bestätigen.



  • not so random comments:

    Das prozedurale C ist um 48.41% schneller als das objektorientierte C++.

    Haha, wo ist der Fehler?

    Ich kenne kein Problem, das sich in C++ nicht schöner lösen lasst als in C.

    Ich kenne kein Problem, dass sich in Scheme/Lisp schoener loesen laesst als in C/C++/Java/Pascal.

    und dann vergleichen wir mal die Quellcodes ganz objektiv

    Haha, wo ist der Fehler?

    C++ ist ja keine wirklich eigene Sprache.

    Genau wie Niederlaendisch. Wo ist der Fehler?

    jahrelang lernen bis man C++ kann [..] und vielen einfach zu lang

    Zum Glueck!

    was definitiv nicht der Fall ist

    Haha, wo ist der Fehler?



  • HighLigerBiMBam schrieb:

    gogogo schrieb:

    ja kann sein aber erstmal jahrelang lernen bis man C++ kann ist schon ziemlich heftig und vielen einfach zu lang.

    Naja... Als ob der Einstieg in C leichter ist als in C++, was definitiv nicht der Fall ist. Man darf halt nur nicht von C kommen und denken, dass C++ C ist mit mehr Features. Dann hat man verloren. Man muss schon den Standpunkt vertreten, dass C++ eine andere Sprache ist und dass diese auch von Anfang an gelernt werden muss. Ich kann diese von dir genannte These nicht bestätigen.

    Och nun komm, wenn C eins C++ weit voraus hat ist die Zeit in der man die Sprache erlernt hat. Ob man dann gut damit programmiert steht nicht zur Debatte.



  • nenene111 schrieb:

    Och nun komm, wenn C eins C++ weit voraus hat ist die Zeit in der man die Sprache erlernt hat.

    Das stimmt einfach nicht. Es kommt ganz auf die Personen an. Es gibt genügend C++ler die nicht verstehen wie Zeiger funktionieren. Und du denkst dass C für diese leichter wäre zu lernen?

    Edit: Von jmd. der C++ nicht erst seit heute programmiert.

    *p = &a[1]; // *p ist int
    

    ++p; // p wird um 1 erhöht, also um 1 byte, ein int besteht aber aus 4 byte. p zeigt somit auf "a[1,25]" quasi



  • Dein Beispiel ist aber C und nicht C++. 🙂



  • HighLigerBiMBam schrieb:

    nenene111 schrieb:

    Och nun komm, wenn C eins C++ weit voraus hat ist die Zeit in der man die Sprache erlernt hat.

    Das stimmt einfach nicht. Es kommt ganz auf die Personen an. Es gibt genügend C++ler die nicht verstehen wie Zeiger funktionieren. Und du denkst dass C für diese leichter wäre zu lernen?

    Na das sind dann wohl kaum C++ler...



  • knivil schrieb:

    Dein Beispiel ist aber C und nicht C++. 🙂

    Richtig lesen, danke.

    Als ob der Einstieg in C leichter ist als in C++, was definitiv nicht der Fall ist.

    Ich hätte doch ein Komma setzen müssen, dann hättest auch du gemerkt, dass als C++ ein Zusatz ist.

    lachmichkaputt schrieb:

    Na das sind dann wohl kaum C++ler...

    Realität sieht anderst aus, oder warum braucht heutzutage jede Software etliche Patches? Weil alle alles können? Ich glaube nicht.



  • Beitrag zur eigentlichen Fragestellung:
    Eine nicht unbedeutende Softwareschmiede favorisiert offensichtlich pures C (und verzichtet damit auf die Features von diversen "modernen" Möchtegern-OOPs: Anmerkung von mir)

    http://asktom.oracle.com/pls/asktom/f?p=100:11:0::NO::P11_QUESTION_ID:5228516811673



  • ++p; // p wird um 1 erhöht, also um 1 byte, ein int besteht aber aus 4 byte. p zeigt somit auf "a[1,25]" quasi

    LOL - Epic fail? 😃
    Da lohnt es sich doch fast noch mal die mit C oder mit C++ Diskussion anzufangen..

    Edit:
    Ok, lieber nicht, das zieht sich immer so.



  • Vor einiger Zeit konnte ich im C++-Subforum lesen, Zeiger seien in C++ obsolet. Von dem Standpunkt aus gesehen, nutze ich sehr häufig C-Techniken, da ich mir nicht vorstellen kann, wie die Manipulation ohne Zeigerarithemetik von größeren Datenmengen vonstatten gehen soll.
    In reinem C würden mir aber einige Features fehlen. Die Objektorientiertheit noch nicht einaml so, gute C-Programme sind allesamt objektorientiert aufgebaut. Das Klassenkonzept macht es aber mE um einiges einfacher. Aber Templates, Exceptions und andere Features machen für mich C++ zur ersten Wahl.

    Ach ja, HighLigerBiMBam's Zitat kam heute genau so im C++-Subforum 😮



  • HighLigerBiMBam schrieb:

    Richtig lesen, danke.

    Ich habe richtig gelesen, du hast nur die Implikation nicht verstanden. Danke!

    Zeiger seien in C++ obsolet.

    Wo ist der Fehler? Vielleicht kannst du deine Quelle mal verlinken.

    mir nicht vorstellen kann

    Pech!



  • ...meistens um Wörter zu verdrehen...letzens für "Lagerregal"... 😃


Anmelden zum Antworten