C Programming Language
Hey! I'm Alexander Fenster, a software developer in California. On this website I'm publishing a C programming language course, from the very beginning to the level enough to solve Advent of code. It's a work in progress, I'm going to add a few pages per week and hopefully complete the main part of the course in 2025. If you thought about learning C, start here!
Ground rules
You cannot learn a programming language only by reading books or websites. Even less you can learn by using AI assistants. To learn how to code you must write code, and this is what we'll be doing here. Most pages will have exercises, and a code editor right here in your browser, which you can use to write code–quite a small piece of code for the first pages–to feel that you are actually using the language.
At some point you might feel you "graduated" from the web browser and want to use a real compiler; we'll talk about it soon enough, but for starters, the browser will just work. I recommend that you use your laptop or a desktop computer for this, but you can try a phone or a tablet, even though writing code on the phone keyboard is not fun.
But please remember: no AI assistants, that is, no ChatGPT. Let's make it fair: I'm not using ChatGPT or any other LLM to write these texts, and you are not using them to write the code. Deal?
Okay – let's start! Press Next to go to the first topic.