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.
- 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.
- 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.
- 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.
€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