C

C

intermediate

You have the power of the gods. Use it wisely. We believe in you. Mostly.

C is the foundation of modern computing. Your operating system is written in it. Your browser's JavaScript engine is written in it. Python itself is written in it. Learning C means learning how computers actually work.

Operating SystemsEmbedded SystemsGame EnginesCompilersSystems Programming
0%
0/8 lessons

Setup

C needs a compiler. GCC and Clang are the two most common. On Linux/macOS they're easy to get. On Windows, you have a few good options.

Bash
# Option 1: MSYS2 + GCC (recommended for Windows dev)
# Download MSYS2 from msys2.org
# In the MSYS2 terminal:
pacman -S mingw-w64-ucrt-x86_64-gcc

# Option 2: Visual Studio (installs MSVC compiler)
# Download Visual Studio Community (free)
# Select "Desktop development with C++"

# Option 3: WSL2 + Ubuntu (best experience)
wsl --install
# Then in WSL: sudo apt install gcc

# Verify (in the appropriate terminal):
gcc --version

Lessons

1
Hello, World!
The original Hello World was written in C in 1974 by Brian Kernighan. We're stil
2
Variables & Data Types
C gives you direct control over data types and sizes. With great power comes the
3
Control Flow
C's control flow is the template every other language copied. If you've used any
4
Functions & Pointers
C functions are straightforward. Pointers less so. But pointers are what make C
5
Arrays & Strings
In C, a string is just an array of characters ending with a null byte (\0). This
6
Structs
Structs let you group related data together. They're C's version of objects — wi
7
Mini Project: Number Guessing Game
Let's build something interactive: a number guessing game that uses everything w
8
C Cheatsheet
Pointers, memory, strings, and structs on one page.