Opleiding: Programmeren in C

Wil je leren programmeren in C, de taal die de basis vormt voor besturingssystemen, embedded systemen en high-performance applicaties? In deze driedaagse training krijg je diepgaand inzicht in C en leer je efficiënte, robuuste code schrijven. Je werkt hands-on met belangrijke concepten zoals geheugenbeheer, pointers en datastructuren, en maakt kennis met tools zoals gcc en gdb. Daarnaast ontdek je hoe je draagbare en veilige C-code ontwikkelt.

Wat leer je in deze training?

  • C-grondslagen – Variabelen, datatypes, operatoren en controlemechanismen.
  • Geheugenbeheer – Dynamische allocatie met malloc(), calloc(), free().
  • Pointers en datastructuren – Werken met arrays, structs en linked lists.
  • Bestands-I/O – Gegevens lezen en schrijven in tekst- en binaire bestanden.
  • Debugging en optimalisatie – Gebruik van gdb, makefiles en best practices.

Deze training is ideaal voor wie low-level programmeren wil beheersen, van embedded development tot systeemsoftware.

De training bevat praktijkgerichte opdrachten, Engelstalig lesmateriaal en wordt gegeven door een Nederlandstalige docent.

  • Beginners die de fundamenten van programmeren willen begrijpen.
  • Embedded developers voor microcontroller-programmering.
  • Systeemprogrammeurs die OS-kernels of drivers ontwikkelen.
  • IT-studenten die algoritmen of datastructuren moeten implementeren.
Dag 1: C Syntax en Basisconcepten
  • Installatie van een C-compiler (gcc/clang) en een IDE (VS Code, CLion of Code::Blocks).
  • Basis syntax: #include, main(), commentaar (// en /* */).
  • Variabelen en primitieve datatypes: int, float, double, char, void.
  • Operatoren: rekenkundig, bitsgewijs (&, |, <<), logisch (&&, ||).
  • Controlestructuren: if/else, switch, for, while, do-while.
Dag 2: Functies, Arrays en Pointers
  • Functies: declaratie, parameters, return-waarden, recursie.
  • Arrays: een- en tweedimensionale arrays, initialisatie.
  • Strings: char[], strlen(), strcpy(), strcmp().
  • Pointers: declaratie (int *ptr), dereferentiëren (*ptr), pointerarithmetiek.
Dag 3: Geheugenbeheer en Geavanceerde Concepten
  • Dynamisch geheugen: malloc(), calloc(), realloc(), free().
  • Structs: definiëren (struct), toegang tot members, pointers naar structs.
  • Bestands-I/O: FILE *, fopen(), fread(), fwrite(), fclose().
  • Preprocessor-directives: #define, #ifdef, macro’s met parameters.


Programma:
  • Basisconcepten:
  • Compilatieproces: preprocessor → compiler → linker.
  • Datatypes: signed/unsigned, short, long, typeconversie ((int)).
  • Operatoren: ternary (?:), comma-operator, precedence.
  • Functies en Scope:
  • Prototypes: functiedeclaraties in headers.
  • Stack vs. heap: lokale variabelen, static keyword.
  • Recursie: factorial, Fibonacci-reeks.
  • Pointers en Geheugen:
  • Pointer naar pointers (int **ptr), arrays vs. pointers.
  • Functiepointers: declaratie (void (*func)(int)), callback-mechanismen.
  • Dynamische arrays: geheugentoewijzing voor variabele groottes.
  • Geavanceerde Datastructuren:
  • Structs: geneste structs, typedef (typedef struct …​).
  • Linked lists: nodes aanmaken, traverseren, toevoegen/verwijderen.
  • Enums: enum voor constante waarden.
  • Bestandsafhandeling:
  • Tekst vs. binaire bestanden: "r", "w", "rb", "wb".
  • Random access: fseek(), ftell().
  • Preprocessor en Debugging:
  • Conditional compilation: #if, #pragma.
  • Debuggen met gdb: breakpoints, backtraces, variabele-inspectie.
  • Makefiles: basisregels, dependencies, variabelen.
  • Security en Best Practices:
  • Buffer overflows voorkomen: strncpy(), snprintf().
  • Geheugenlekken vermijden: free() na malloc().
  • Valgrind: geheugenlekdetectie.
  • Bereidt voor op het C Programming Language Certified Associate (CLA).
  • Basis voor Embedded C-certificeringen (afhankelijk van vervolgopleidingen).
  • Geen officieel examen inbegrepen – optioneel extern af te leggen.
Meer...
€495
ex. BTW
Aangeboden door
@The Academy
Onderwerp
C/C++
Niveau
Duur
90 dagen
Looptijd
24 dagen
Type product
training
Lesvorm
Klassikaal
Aantal deelnemers
Max: 12
Tijdstip
Overdag
Keurmerken aanbieder
CRKBO en BTW-vrijstelling
NRTO
Microsoft Learning Partner
EC-Council