Es gibt eine Vielzahl völlig unterschiedlicher Motivationen, das Programmieren in C zu erlernen. C ist quasi der “Oldie, but Goodie” unter den Programmiersprachen, aber mit fast 50 Jahren immer noch in höchsten Maße “alive and kicking”. Aus C gingen nicht nur objectorientierte Programmiersprachen wie C++ (gesprochen “Ze plus plus”) und C# (gesprochen “Zi sharp”) hervor, sondern die meisten anderen Programmiersprachen übernahmen die grundlegenden Konzepte und Konstrukte in ihre Semantik und Syntax.

C Code und der seiner Abkömmlinge und der verschiedenen Versionen wird sehr hardwarenah übersetzt und führt zu Programmen mit sehr hoher Ausführungsgeschwindigkeit. Ganze Programmiersprachen sind in C geschrieben und die meisten Betriebsysteme bestehen fast ausschließlich aus C Code. Um viele Aspekte wie Speicheraufteilung und -verwaltung muss sich allerdings der Programmierer kümmern. Das macht den Einstieg für Anfänger in C teilweise schwer, aber wer diese Hürde schließlich meistert, erschließt sich ein grundlegendes Verständnis für eine große Zahl von Techniken und weiß die Erweiterungen vieler Programmiersprachen erst wirklich zu schätzen. Darüber hinaus bietet sich C überall dort an, wo Speicher knapp ist und hohe Ansprüche an die Effizienz des Codes gestellt werden – inbesondere in Embedded Systems und Mobilgeräten.

Nachfolgende habe ich eine Liste von Medien und Kursen zusammengestellt, die den Einstieg erleichtern soll. Teilweise sind sie kostenpflichtig, teilweise in deutscher und englischer Sprache und die Liste natürlich erhebt die Liste keinen Anpruch auf Vollständigkeit.

Über Hinweise auf Kurse, Literatur und kostenlose Vorlesungen und Videos freue ich mich.

Video/Udemy

Titel Sprache Dozent Dauer Bewertung
C Komplettkurs: Praxisnahe Programmierung für C Einsteiger Deutsch Jan Schaffranek ca. 18 Stunden (Nur Video, ohne Übungen)
4/5
C Programmieren - Praxisorientierter Einsteiger Kurs Deutsch Hendrik Pruin ca. 7 Stunden (Nur Video, ohne Übungen)
3/5
C Programming For Beginners - Master the C Language English Jason Fedin ca. 24 Stunden (Nur Video, ohne Übungen)
4.5/5
Advanced C Programming Course English Jason Fedin ca. 28 Stunden (Nur Video, ohne Übungen)
4.5/5
Part A - Multithreading & Thread Synchronization - C/C++ English Shiwani Nigam ca. 12 Stunden (Nur Video, ohne Übungen)
3.5/5

Literatur

C Programmieren Für Anfänger: Der schnelle Einstieg Deutsch Florian Dedow
3.5/5
The C Programming Language. (Prentice Hall Software) English Brian W. Kernighan, Dennis Ritchie
4.5/5
C Programmieren: für Einsteiger: Der leichte Weg zum C-Experten Deutsch Markus Neumann
4.5/5
C in a Nutshell: The Definitive Reference English Peter Prinz, Tony Crawford
4.5/5
Expert C Programming: Deep C Secrets English Peter van der Linden
4/5
C programmieren lernen für Dummies Deutsch Dan Gookin, Wilhelm Kulisch
4.5/5
C Programming For Dummies English Dan Gookin
4.5/5
Dan Gookin's Guide to Ncurses Programming English Dan Gookin
4.5/5
Programming with POSIX Threads English David R. Butenhof
4.5/5

Vorlesungen

Sytem Programming insbesondere Kapitel 5 "Interactive Programs and Signals" und Kapitel 6 "Event Driven Programming: Timers and Asynchronous I/O" English Prof. Steward Weiss (Hunter College)
4.5/5