Bakgrund
Av alla de dataspråk som finns kan man med bestämdhet säga att C är ett måste för programmerare idag. Vi lär dig inte bara grunderna utan visar varför professionella programmerare tycker så bra om C. Du erhåller under kursen ett komplett C-system att använda på din persondator.

Hur man skriver program
När man ska skriva program är det viktigt att man skriver dem på ett sådant sätt att de är lättlästa och går att underhålla av andra. Du får i detta pass lära dig några enkla trick för att hålla en enkel och tydligt stil när du programmerar. Det underlättar till exempel betydligt om man i Emacs kan göra redigeringspaket som fäller in huvuden och kommentarer. Du får lära dig hur man skapar sådana makropaket i Emacs.

Grundelementen i C
Vi går systematiskt igenom hur språkelementen i C hänger ihop och illusrerar dessa med små programexempel.

Deklarationer och uttryck
Vi startar med hur man deklarerar dataelement och vad som utgör ett uttryck.

Vektorer, strukturer och kvalifierare
Därefter går vi igenom mera avancerade datastrukturer som vektorer och strukturer.

 

Kontrollsatser
Vi går grundligt igenom språkets uppbyggnad med kontrollsatser och deras använding.

Variabler, scoop och funktioner
Hur variablerna och deras räckvidd över funktioner och programblock är definierade.

Preprocessorn i C
Vi går igenom hur preprocessorn används och hur man kan förenkla sin programmering genom att använda preprocessorn på rätt sätt.

Bitoperationer
Vi visar hur bitoperationerna fungerar i C och hur man använder dessa. Bitoperationer används ofta vid hårdvarunära programmering och vi visar med några exempel hur detta går till.

Avancerade datatyper
Vi visar hur man kan bygga upp mera avancerade datatyper med hjälp av de grundläggande datatyperna.

Enkla pekare
Pekare upplevs ibland som krångliga. Vi visar i detta avsnitt att inget kan vara mera fel. Får man klart för sig att pekare inte är något annat än en adressvariabel, så blir framställningen tydlig och enkel.

In- och utdata
I C finns inte några inbygda funktioner för in och utmatning. Antingen tar man hjälp av operativsystemet (read/write) eller så använder man standardbiblioteket. Vi beskriver hur detta hänger samman och varför.

Flyttal
Olika flyttal och deras representationer. Vi lär oss vad som händer vid konvertering mellan olika representationer.

Avancerade pekare
Adresser kan användas, inte bara till data, utan även till funktioner. På så vis kan man under exekveringen av programmet bestämma, beroende på olika vilkor, hur exekveringen skall fortlöpa.

Portabilitetsproblem
Vi beskriver hur man skall se till att programmen blir portabla. Vi titta på hur man skall välja sina bibliotek och hur C-koden skall organiseras för att göra programmen maximalt portabla mellan olika miljöer.

Bibliotek
Vi visar hur olika bibliotek används till språket. Speciellt går vi igenom vad som kallas standardbiblioteket, men även andra bibliotek illustreras.

Övningar
Skriva program, kompilera och länka
Den grundläggande processen för programutveckling belsyes. Vi visar också hur programutveckling sker i en arbetsgrupp med många inblandade programmerare.

In- och utdata från filer
I denna övning lär vi oss att skriva ett enkelt program som läser och skriver till en fil.