Könnt ihr alles in C machen was ihr euch so vornehmt?



  • Ich möchte gerne C lernen, aber habe bedenken dass ich damit nur wenige Sachen machen kann. Alle reden von OOP etc. und das C++ viel besser geeignet ist um Programme zu schreiben und nicht so fehleranfällig uns so weiter.

    Könnte einer der vielen Profis hier mal etwas dazu schreiben?



  • Wenn du C lernen willst, lern C. Ist imo keine so schlechte Sprache für den Einstieg. Es ist relativ einfach, abgeschlossen und doch sehr vielseitig. Du kannst praktisch alles damit machen.

    Ich würd dir aber raten, früher oder später C++ zu lernen, denn C++ hat imo wesentliche Vorteile gegenüber C und es gibt imo heutzutage, zumindest wenn man nicht gerade auf entsprechenden Plattformen unterwegs ist, wo kein vernünftiger C++ Compiler verfügbar ist, keinen vernünftigen Grund reines C zu benutzen...



  • Danke, werde dann man mit C anfangen und habe mir gerade das kostenlose Ebooks C von A bis Z runtergelade, hat ja ganz gute Kritiken bekommen bei Amazon.

    Für welche Sachen brauche denn dann später C++?



  • Anfänger2012 schrieb:

    Danke, werde dann man mit C anfangen und habe mir gerade das kostenlose Ebooks C von A bis Z runtergelade, hat ja ganz gute Kritiken bekommen bei Amazon.

    Aufgepasst: http://www.c-plusplus.net/forum/272350?highlight=j�rgen+wolf 😉

    Anfänger2012 schrieb:

    Für welche Sachen brauche denn dann später C++?

    Du kannst rein prinzipiell mit C alles machen. C++ bietet einfach nochmal um ein paar Größenordnungen mehr Möglichkeiten dich auszudrücken. Allein Dinge wie Overloading und Templates sind imo ein Grund, niemals reines C zu benutzen, wenn C++ eine Option ist...



  • Oh der Jürgen Wolf scheint ja nicht besonders beliebt hier zu sein, ist das C Buch denn sooo schlecht?

    Ja, habe schon gehört dass man sehr viel in C++ machen kann. Ich habe auch schon einmal kurz die Sprachen überflogen und mir Code von beiden angeschaut. Bei C sind die ganzen Zeigersachen etwas kompliziert, bei C++ blicke ich ehrlich gesagt kaum durch, dass sieht alles extrem verwirrend und komplex aus. Die Sprache zu lernen, stelle ich mir sehr hart vor.

    Egal, erst einmal will ich C lernen und vielleicht kommt mir dann C++ weniger wie ein chaotischer Wortsalat vor;-)


  • Mod

    Anfänger2012 schrieb:

    Oh der Jürgen Wolf scheint ja nicht besonders beliebt hier zu sein, ist das C Buch denn sooo schlecht?

    Es ist ein Lehrbuch, das dir falsche Sachen beibringt. Schlechter geht es kaum.

    Egal, erst einmal will ich C lernen und vielleicht kommt mir dann C++ weniger wie ein chaotischer Wortsalat vor;-)

    Dann tu das. C ist tatsächlich wesentlich einfacher komplett zu verstehen als C++. Erwarte aber nicht, dass dir C-Kenntnisse großartig was bringen, wenn du C++ machst, höchstens für die Syntax und die hat man sowieso in ein paar Tagen drauf. Man sagt sogar, es ist eher hinderlich, weil die sprachliche Nähe dazu verführt, in C++ wie in C zu programmieren, was dann keine gute Idee ist.

    Das soll dich nicht von C abhalten, bloß eine Warnung für die Zukunft, falls du mal umlernen willst. C ist sicher eine gute Wahl.



  • C ist einfach zu lernen, aber komplexe Dinge sind darin aufwändig umzusetzen. C++ ist schwer zu lernen, kann einem aber eine Menge Arbeit abnehmen, wenn man den Durchblick einmal hat.

    Wenn du aber kompletter Anfänger bist, würde ich nicht gleich mit einer Bare-Metal-Sprache anfangen, mit der du direkt auf der Maschine unterwegs bist, sondern mich eher in Richtung von VM-Sprachen umkucken (beispielsweise Scala). Das Problem mit nativen Sprachen für Anfänger ist, dass man leicht Fehler bauen kann, deren Funktionsweise sich einem erst erschließt, wenn man sich schon ein gutes Gespür für die Arbeitsweise der Maschine erarbeitet hat. VM-Sprachen haben ihre eigenen Probleme, aber wenn man dort über das Ende eines Arrays hinausschreibt, meckern sie gleich und nicht eine Viertelstunde später, wenn der Speicherblock, der zufällig hinter dem liegt, den man zerschossen hat, wieder freigegeben werden soll.



  • Was meinst du mit komplexe Dinge? Was für ein Programm kann ich denn nur schwer in C machen?

    An VMs habe ich auch schon gedacht aber da ich ganz früher in den 80ziger gut mit Assembler klar gekommen bin sind mir Register und z.B indirekte Adressierungen ans Herz gewachsen und es hat immer Spaß gemacht mit einen Hand voll Befehlen alles zu programmieren was man sich so vorstellen konnte, damals.



  • Wie wär es denn mit Cobol für das Lernen der Programmierung. Open Cobol nutze ich gerne und man kann sich erst mal auf die Logik und fachliche Problematik konzentrieren. Speicherverwaltung usw macht der Compiler und Beispiele und Tutorials gibt es auch massenweise im Netz. Sogar Netzwerkprogrammierung oder ist damit problemlos möglich. Es ist halt immer die Frage, was man will. Für mich, da ich aus der Z/OS-Welt komme, tu ich mich mit CObol halt viel einfacher als mit C.



  • Assembler > Alles andere

    👍

    Pferde Erschrecker aka DerComputerVeteran



  • Ja Assembler war früher toll, damit habe wir auch alles gemacht 3D Grafik, GUIs Matheprogramme. Keine kryptischen Symbole, alle Befehle waren schnell und einfach zu erlernen. Die gesammte Sofware hat meist ein Mann geschrieben. Ein Jump oder heute Goto war DAS Mittel der Wahl^^ Naja ist es heute auch noch, halt unsichtbar.

    Ich gebe dir Recht jemand der keine CPU in Assembler programmieren kann sollte sich auch nicht Programmierer nennen dürfen.*g


  • Mod

    Real Programmers can write Fortran Assembler in any language.


Log in to reply