Sie befinden sich hier: Home » Seminare » Programmiersprachen » ANSIC2

C-Programmierung Teil 2

Kursziele

Das fortgeschrittene C-Seminar konzentriert sich auf die unterschiedlichen Anwendungsbereiche der höheren Programmiersprache C und geht insbesondere auf Zeiger, Datenstrukturen und die Standardfunktionen der C-Bibliothek ein. Mit den Standardfunktionen der unterschiedlichen Bibliotheken können Teilnehmer Ein-/Ausgabeoperationen programmieren und Systemprogramme entwickeln. Im Ausblick stellt das Seminar Profiling und Optimierungsmöglichkeiten für performante und C-Programme vor.

Zielgruppe

  

Empfohlene Dauer

Software-Entwickler, Programmierer, Systementwickler  4 Tage, insgesamt 24 Zeitstunden

Inhalte

  • Anwendung der Pointer
    • Zeiger auf Funktionen
    • Rekursive Datentypen am Beispiel einer linearen Liste
    • Funktionen mit variabler Parameteranzahl
    • Umgang mit Dangling Pointers
  • Datenstrukturen und Algorithmen
    • Einfach und doppelt verkettete Listen
    • Stack, Queue
    • Bäume (Trees)
    • Such- und Sortieralgorithmen
    • Weitere komplexe Datentypen
  • Allgemeine C-Bibliothek
    • Header-Datei <stdlib.h>
    • Typkonvertierungen: atof(), atoi(), atol(), strtod(), strtol, strtoul
    • Zufallszahlen: rand(), srand()
    • Allokation: malloc(), calloc(), realloc(), free()
    • Prozesskontrolle: abort(), atexit(), exit(), getenv(), system()
    • Sortieren und Suchen: bsearch(), qsort()
    • Mathematisches: abs(), labs(), div(), ldiv()
  • ANSI-C Standard Library für Zeichen und Zeichenketten
    • Header-Datei <ctype.h>
    • isXXX()-Funktionen, tolower() und toupper()
    • Header-Datei <string.h>
    • Speicher bewegen: memXXX()
    • String-Funktionen: strXXX()
  • Dateien und Ein-/Ausgabe
    • Dateien und Handles
    • Dateiattribute, Verzeichnisoperationen
    • Dateien öffnen, anlegen/erzeugen und löschen
    • Formatierte Ein-/Ausgaben mit fprintf(), fscanf()
    • Dateiende und Fehlerbehandlung
    • Dateizeiger verändern, zeilenweises Arbeiten
    • Blöcke lesen und schreiben
    • File-Deskriptor
    • Kodierung Big-Endian und Little-Endian
  • Weitere ANSI-Bibliotheken
    • Arbeiten mit variablen Argumentlisten <stdarg.h>
    • Mathematisches aus <math.h>
    • Bibliotheken für einfache Datentypen: <stdint.h>
    • Zeitoperationen über <time.h>
    • Fehlercodes und <errno.h>
    • Assertions über <assert.h>
    • Signale aus <signal.h>: SIGKILL, SIGSTOP
    • Sprünge aus <setjmp.h>
  • C in der Praxis
    • Portierbarkeit, Parameterübergabe und Stackreihenfolge
    • Unicode und Codepages
    • C unter Windows/C unter Unix
    • Dynamische Bibliotheken (.dll oder .so)
    • Testen von C-Programmen
    • Profiling
    • Optimierung für effiziente C-Programme
    • Debugging
    • Einführung in objektorientierte Programmierung mit C++

Voraussetzungen

Der Kurs ›C-Programmierung Teil 1‹ oder vergleichbare Kenntnisse.

Software

Basis des C-Kurses ist ein beliebiger C-Compiler wie GCC, Microsoft Visual C++ oder Borland C++ Compiler.

Schlagwörter