TU ACM logo.
blog

Making Sense of C

Considering how fundamental the C programming language is to modern programming languages, the speed of C programs, and how it helps you understand the computer, you would think that finding well-written tutorials online would be easy. Given that I couldn't find a suitable tutorial online, I decided to write my own.

Making Sense of C


by Joseph Mellor


A C tutorial for everyone.

The Basics of C


by Joseph Mellor


If you decided to make a programming language, where would you start?

Comments in C


by Joseph Mellor


Instead of having a programmer open another file to figure out why you did something, write your explanations directly in the code

Coming Up with Our First Program in C


by Joseph Mellor


Before we can figure out what we want C to do, we need to figure out what we want to do.

Variables and Basic Arithmetic


by Joseph Mellor


We're going to learn how to play around with values in this article.

Fundamental Types in C


by Joseph Mellor


"I'm very font of you, you must be my type."

Representing Text in C


by Joseph Mellor


Computers only speak binary, so how can we represent text?

Memory Addresses in C


by Joseph Mellor


How does the computer know which bits to use for what?

Control Flow in C


by Joseph Mellor


We still need some way of changing the behavior of the program based on the user input.

Functions in C


by Joseph Mellor


Functions are the building blocks of programs in C.

The main Function in C


by Joseph Mellor


As you can guess, the main function is quite an important function in C.

Header Files in C


by Joseph Mellor


The glue of C programs.

Files in C, Pt. 1


by Joseph Mellor


We're going to get files from our hard drive into our program.

Files in C, Pt. 2


by Joseph Mellor


Now that we can open files in our program, let's interact with them

Compilers and IDEs for C


by Joseph Mellor


We're going to compile our first program!

Making a Word Counter in C


by Joseph Mellor


We're going to write our first serious program.