Sproget bag operativsystemer, compilere og indlejret hardware
C er ikke blot en historisk kuriositet — det er sproget under Linux, SQLite-databasemotoren, CPython-fortolkeren og stort set al firmware til mikrokontrollere, der leveres i dag. Når du forstår C, forstår du, hvordan hukommelsen faktisk fungerer, hvordan processoren udfører dine instruktioner, og hvorfor alle højniveausprog foretager de valg, de gør. Dette forløb dækker C fra din første printf til at skrive en hukommelsesallokator, en hashtabel, en sammenkædet liste og en fungerende fortolker.
Det lærer du
Du begynder med operatorer, kontrolflow, formateret I/O og typekonvertering og går derefter videre til standardbiblioteket — math.h, string.h, ctype.h — samt C-specifikke emner som enumerationer, kommandolinjeargumenter, lagringsklasser og præprocessormakroer. Afsnittet på mellemniveau dækker pointere og dynamisk hukommelseshåndtering, funktionspointere og callback-funktioner, funktioner med variabelt antal argumenter samt modulære projekter med flere filer. Du implementerer centrale datastrukturer fra bunden: sammenkædede lister, binære træer, hashtabeller og dynamiske arrays. De avancerede kurser dækker multitrådning og samtidighed, socketprogrammering, kommunikation mellem processer, hukommelsesfejlfinding med Valgrind og netværksprogrammering med epoll.
Læringsforløbet
39 kurser dækker A1 til C1. Kurserne på A1- og A2-niveau etablerer syntaks, rekursion og standardbiblioteket. 11 B1-kurser opbygger praktiske færdigheder — filhåndtering, bitmanipulation, strukturer og unioner samt præprocessoren. 10 B2-kurser går mere i dybden: dynamisk hukommelse, sorteringsalgoritmer og hashtabeller, med afslutning i C Building a Memory Allocator. De syv C1-kurser afslutter forløbet med arbejde på systemniveau: Multithreading and Concurrency, C Socket Programming, C Memory Debugging with Valgrind, C Writing a Simple Interpreter og C Network Programming with epoll.
Sådan fungerer det
Hvert kursus er opdelt i korte, fokuserede lektioner, som du gennemfører i den indbyggede kodeeditor med feedback på dit output i realtid. Du kan få hjælp af en AI-underviser, når du går i stå på grund af en segmenteringsfejl, en linkerfejl eller en fejl med én position i pointeraritmetik. Dine fremskridt registreres for hver lektion, så du kan holde pause og fortsætte på tværs af sessioner uden at miste overblikket.