Drucken

C Grundlagen

Unter allen heute verwendeten Programmiersprachen ist C immer noch der "Klassiker" und aus der systemnahen Programmierung nicht mehr wegzudenken. Alle, die sich mit Kernel-Programmierung, Device-Drivern und ähnlichen Themen beschäftigen, benötigen C als unumgängliches Handwerkszeug. Durch das sehr schlanke Konzept ist C einerseits für die Schönheit der schlichten Ausdrucksstärke beliebt und andererseits für unerschöpfliche Fehlerquellen durch unvorsichtige Pointer-Verwendung gefürchtet. Dieser Kurs bietet einen Einstieg in die Programmierung mit C und damit eine grundlegende Diskussion aller in der Sprache enthaltenen Konstrukte mit entsprechenden Hinweisen auf ihre richtige Anwendung und auch auf versteckte Stolpersteine.

Kursinhalte

  • Der Sprachkern
    • Grundlagen
      • C ist eine Sprache, um nackten Speicher zu manipulieren. Maschineninstruktionen werden direkt ausgeführt. Das bringt einen erheblichen Geschwindigkeitsvorteil gegenüber interpretierten Sprachen — aber auch den Nachteil, dass man zu jeder Zeit genau wissen muss, was man tut. In diesem Kapitel werden Grundlagen erklärt, die für das Verständnis der Speicherverwaltung eines Programmes zu tun haben.
    • Kontrollkonstrukte
      • Das wenigste, worin sich C von anderen Sprachen unterscheidet, sind Kontrollstrukturen wie if, switch, while, sowie Funktionen.
    • Pointer
      • Sind das Beliebteste an C, da sie eine Unmenge an Flexibilität einbringen. Sie sind auch das Unbeliebteste an C, da sie eine Unmenge an Fehlermöglichkeiten einbringen. Neben Pointern werden auch Möglichkeiten gezeigt, die unvermeidlichen Fehler zu finden.
    • Implizite Typumwandlungen
      • Ein Hauptkritikpunkt an C ist die sorglose Konvertierung zwischen signed und unsigned Integertypen, zwischen Integertypen verschiedener Breite, und zwischen Floating Point Zahlen und Integers. Die Konvertierungen folgen nichtsdestotrotz einem Regelwerk, das man verstanden haben sollte, um korrekte Programme schreiben zu können.
    • Der C-Präprozessor
      • Als Teil der Sprache wird er in den Grundzügen gezeigt.
    • Modularisierung
      • Ist heutzutage aus der Programmierung nicht mehr wegzudenken. Ein Grund für den Erfolg von C war damals die Möglichkeit, Teile von Programmen separat zu bauen und sie erst später zu verbinden. Hier gibt es einiges zu erzählen.
    • Verschiedenes
      • Debugginghilfen wie das assert() Macro
      • Sichtbarkeit oder die verschiedenen Bedeutungen des Wortes static
      • Die Toolchain: Compiler und Linker, Optimierungsmöglichkeiten, …
      • Analyse von Memoryfehlerszenarien
  • Die Standard-Library
    • Dynamischer Speicher
      • malloc() und free(), und verwandte Funktionen, um explizit Speicher zu verwalten
    • Standard I/O
      • Formatierte und komfortable Ein- und Ausgabe ist nicht gerade eine der Stärken von C. C hat mächtige Werkzeuge der Ein- und Ausgabe, jedoch sind diese weit weg von Komfort und Fehlerimmunität — schon alleine deswegen verdienen sie mehr als nur eine Erwähnung.
    • Stringbearbeitung
      • Strings sind in C aus heutiger Sicht etwas eigenwillig definiert. Die Standard-Library bringt eine Fülle von Funktionen mit, die Stringbearbeitung erleichtern. Hier lauern wieder Gefahren (alle Arten von Memoryfehlern).
  • Praktische Beispiele

Empfohlene Vorkenntnisse

Basiskurs, Programmierkenntnisse sind nicht erforderlich

Kurslänge: 5 Tage

Details zu diesem Open Source Training

Kurstitel: C Grundlagen
Kurspreis: € exkl. MwSt
pro Teilnehmer, Standardpreis ohne Rabatt

Kursdatum:    
Kurszeiten:

Open date - Open date
09:30 - 17:00
Alternative Termine stehen am Ende dieser Seite


Dieses Training findet in der typischen Classroom Variante und in der Live Variante übers Internet statt. Sie können selber entscheiden welche Variante besser für sie passt.


Kursort:


Das Classroom Training findet statt bei:

LinuxCampus
Brodtischgasse 4
2700 Wr. Neustadt (Österreich) Austria
Website des Veranstaltungsortes
LinuxCampus
Das Live Training findet statt bei:

Sie können vom jedem Ort teilnehmen von dem Sie möchten und es ist keine Anreise notwendig. Sie benötigen nur eine Webcam, einen Webbrowser (ZOOM-Session) und einen VNC-Client für den Zugriff auf ihr Teilnehmer LAB.

Details:

Der Kurs ist auf 10 Teilnehmer beschränkt
Die Unterrichtssprache ist Deutsch
Die Kursunterlagen werden im PDF Format bereitgestellt
Jeder Teilnehmer erhält ein Kurszertifikat
Kalt- und Heißgetränke und Snacks werden kostenlos bereitgestellt

Kennen Sie schon das LinuxCampus.net Rabatt & Bonus System?

Den Kurstermin Open date - Open date buchen

Schritt 1:  Auswahl der Kursvariante (Classroom oder Live)
Schritt 2:  Angabe der Teilnehmer Daten

Erforderlich Tooltip
Tooltip
Tooltip
Tooltip
Erforderlich Tooltip
Tooltip
Erforderlich Tooltip
Erforderlich Tooltip
Erforderlich Tooltip
Erforderlich
Erforderlich Tooltip
Erforderlich Tooltip
Erforderlich Tooltip
Erforderlich Tooltip
Hiermit bestätige ich das ich die AGB gelesen und akzeptiert habe
Erforderlich
1 Kursvariante
2 Anmeldedetails


Alternative Kursmöglichkeiten

Alternativer Kursort:
Dieses Thema kann auch als In-House Training oder Einzeltraining gebucht werden

Alternativer Termin:
Ab 3 Teilnehmern bieten wir Ihnen gerne einen auf Ihre Bedürfnisse abgestimmten Termin an

Weitere Termine zu diesem Kursthema

Diese Seite verwendet Cookies. Für eine uneingeschränkte Nutzung der Webseite werden Cookies benötigt. Sie stimmen der Verwendung von Cookies durch Anklicken von "OK" zu. Nähere Informationen finden Sie in unseren Datenschutzbestimmungen und unter dem folgenden Link "Weitere Informationen".