Cursus Programmeren in C: pointers, geheugenbeheer en debuggen

Gratis online cursus · Beginner · 8 lessen

Leer C, van typen en programmaverloop tot functies, arrays, strings, pointers, dynamisch geheugen, structs en bestandsinvoer en -uitvoer, en schrijf veiligere code met debuggers en sanitizers. Daarna kun je kleine C-programma's schrijven en debuggen en redeneren over geheugen.

Door Studeli

Begin met les 1

Is deze cursus Programmeren in C iets voor jou?

Voor wie

Je wilt begrijpen hoe programma's geheugen en hardware gebruiken, of je opleiding (techniek, embedded systemen, besturingssystemen) gebruikt C.

Wat je leert in 8 lessen

Elke les bevat alle negen studietools

  • Leermodule
  • Samenvatting
  • Walkthroughs
  • Oefenvragen
  • Flashcards
  • Leg Het Uit
  • Kernbegrippen
  • Spiekbriefje
  • Conceptmap
  1. Compileer C-programma's en voer ze uit, declareer variabelen van de basistypen en stuur het programmaverloop met voorwaarden en lussen.

    6 leerdoelen
    1. 1.Bouw C-programma’s en voer ze uit
    2. 2.Sla gegevens op in variabelen van de basistypen
    3. 3.Toon uitvoer en lees invoer met printf en scanf
    4. 4.Reken met operatoren en expressies
    5. 5.Stuur het programmaverloop met voorwaarden en lussen
    6. 6.Herken en voorkom overloop bij gehele getallen
  2. Schrijf functies met prototypes, verdeel programma’s over bronbestanden en headerbestanden en bouw ze met de preprocessor en make.

    5 leerdoelen
    1. 1.Schrijf, declareer en roep functies aan
    2. 2.Bepaal waar variabelen zichtbaar zijn en hoelang ze bestaan
    3. 3.Gebruik de C-preprocessor
    4. 4.Verdeel een programma over bronbestanden en headerbestanden
    5. 5.Bouw programma’s uit meerdere bestanden met make
  3. Werk met arrays en strings die eindigen op een nulteken, verwerk opdrachtregelargumenten en voorkom toegang buiten de grenzen.

    6 leerdoelen
    1. 1.Sla verzamelingen waarden op in arrays en verwerk ze
    2. 2.Stel tekst voor met tekens en strings die eindigen op een nulteken
    3. 3.Gebruik de standaardfuncties voor strings
    4. 4.Orden gegevens in meerdimensionale arrays
    5. 5.Verwerk opdrachtregelargumenten
    6. 6.Voorkom toegang buiten de grenzen en bufferoverloop
  4. Gebruik pointers om gegevens via verwijzing door te geven, doorloop arrays met pointerrekenen en leg uit hoe variabelen in het geheugen worden geplaatst.

    5 leerdoelen
    1. 1.Begrijp geheugen, adressen en pointervariabelen
    2. 2.Gebruik pointers om gegevens met functies te delen
    3. 3.Navigeer door arrays met pointerrekenen
    4. 4.Werk met pointers naar pointers
    5. 5.Gebruik functiepointers en callbackfuncties
  5. Reserveer geheugen op de heap en geef het vrij, wijzig de grootte van buffers en spoor geheugenlekken en ongeldige toegang op met hulpmiddelen voor geheugencontrole.

    5 leerdoelen
    1. 1.Leg uit waar een C-programma zijn gegevens opslaat
    2. 2.Reserveer heapgeheugen en geef het vrij
    3. 3.Wijzig de grootte van buffers met realloc
    4. 4.Herken en voorkom geheugenfouten
    5. 5.Spoor geheugenfouten op met Valgrind en sanitizers
  6. Definieer structs en enumeraties en bouw gekoppelde lijsten, stapels, wachtrijen, bomen en hashtabellen uit dynamisch gereserveerde knopen.

    6 leerdoelen
    1. 1.Groepeer samenhangende gegevens met structs
    2. 2.Geef keuzewaarden een naam met enumeraties en deel opslag met unions
    3. 3.Maak en onderhoud gekoppelde lijsten
    4. 4.Implementeer stapels en wachtrijen
    5. 5.Maak en doorloop binaire bomen
    6. 6.Sla sleutels op en zoek ze op met hashtabellen
  7. Lees en schrijf tekstbestanden en binaire bestanden met de standaardbibliotheek voor invoer en uitvoer en handel fouten robuust af.

    5 leerdoelen
    1. 1.Open bestanden als gegevensstromen en verbind programma’s met hun invoer en uitvoer
    2. 2.Lees en schrijf tekstbestanden
    3. 3.Sla gegevens op in binaire bestanden en lees ze in
    4. 4.Ga naar een willekeurige positie in een bestand
    5. 5.Detecteer en meld bestandsfouten en herstel de werking na een fout
  8. Debug C-programma’s met een debugger en compilerwaarschuwingen, herken ongedefinieerd gedrag en pas werkwijzen toe die C-code veiliger maken.

    5 leerdoelen
    1. 1.Laat de compiler problemen voor je opsporen
    2. 2.Spoor programmeerfouten op en herstel ze met een debugger
    3. 3.Herken en voorkom ongedefinieerd gedrag
    4. 4.Spoor tijdens de uitvoering fouten op met asserties en sanitizers
    5. 5.Schrijf veiligere C-code

Wat je hierna kunt volgen

Meer cursussen Programmeren
Volgende: Besturingssystemen: processen, geheugen, threads en bestandssystemen (Gemiddeld)

Je kunt programmeren in C (of bent bereid C-voorbeelden te lezen) en wilt processen, geheugen, gelijktijdigheid en bestandssystemen begrijpen vanuit het besturingssysteem.

Maak je eigen Studiemateriaal

Maak van je aantekeningen, slides en documenten Leermodules, Oefenvragen, Flashcards en 6 andere tools.

Aan de slag