Hands on Introduction to C Programming in the Terminal

The C Programming Language, Syntax, Compiling and Debugging


What you’ll learn

  • How to create C programs using only the terminal..
  • The syntax of the C Programming Language.
  • Debugging with GDB to find errors in your C programs..
  • How to find memory leaks using Valgrind..
  • How to build larger pieces of software with tools like make.

Course Content

  • Introduction to the Course –> 5 lectures • 8min.
  • Course Setup –> 4 lectures • 7min.
  • Introduction to C –> 4 lectures • 15min.
  • Basic Syntax and Programming Constructs –> 8 lectures • 38min.
  • C – Structured Programming –> 3 lectures • 17min.
  • Memory and Strings –> 19 lectures • 1hr 48min.
  • Understanding Memory Allocation –> 2 lectures • 18min.
  • Debugging C Code –> 1 lecture • 3min.
  • C – Working with custom data types — structs –> 7 lectures • 33min.
  • C – Data Structures –> 3 lectures • 36min.

Hands on Introduction to C Programming in the Terminal


  • Students should be familiar with their operating system and how to launch applications..
  • Students should have some programming knowledge or are concurrently learning how to program..


In this course you will learn how to program in the C programming language with nothing more than a terminal, a compiler, and a simple text editor. The goal is to get you up to speed as fast as possible focusing on learning the language. This course is ideal for someone who needs additional tutoring in C programming, will be starting a new job in a position where they will program in C, or otherwise needs to refresh their skills on the C language.

Topics you’ll learn

Some of the things you will learn in this course include:

  • C Programming foundations: input/output, loops, functions, pointers
  • C Data structures: arrays, linked lists
  • Working with files for reading and writing data
  • Building custom data structures
  • Debugging using professional tools like GDB and Valgrind.
  • Intermediate level topics like working with function pointers

Why you should take this course?

You should consider choosing this course because it is being taught by someone who has used C in industry and academia, and will be kept up to date over time. We’ll also talk about things not often talked about, like how to build libraries, or how the compilation toolchain works in C, so you fully understand the details or how to otherwise grow as a C programmer. I hope you enjoy starting your journey learning C with me!

Who am I?

I have been teaching for over 10 years in universities and as a professor. I have worked in industry in big companies, startups, and as a consultant.

Get Tutorial