All courses
01Beginner Available now

C Programming Essentials

Learn C the right way — from binary, through pointers, to memory. 16 lessons and 12 practice sheets, built for students who want to actually understand the language, not just pass a college lab exam.

16 lessons
12 practice sheets with 646 questions
At your own pace
Written notes now, YouTube videos coming soon
Free
Every lesson and practice sheet, at no cost
Start learning

> ./start --course c-programming

Outcomes

What you'll be able to do

  • Go from binary and bitwise logic to pointers and memory management in C
  • Set up and use the GCC toolchain from the command line, no IDE hand-holding
  • Write and debug functions, arrays, strings, structs, unions and enums
  • Work confidently with pointers, function pointers and dynamic memory
  • Read and write multi-file C programs with headers and the preprocessor

Syllabus

Course outline

  1. 01Binary, Bitwise and Boolean Operations
    94 Q
  2. 02Data Types & Arithmetic Operators
    51 Q
  3. 03Conditions
    50 Q
  4. 04Loops
    50 Q
  5. 05Arrays
    51 Q
  6. 06Strings
    50 Q
  7. 07Functions
    50 Q
  8. 08Pointers
    50 Q
  9. 09Function Pointers
    50 Q
  10. 10Command Line Arguments
  11. 11Recursion
  12. 12Structures, Unions and Enumerations
    50 Q
  13. 13Dynamic Memory
    50 Q
  14. 14Reading and Writing Files
  15. 15The Preprocessor
    50 Q
  16. 16Header Files, extern and static

Q is the number of practice questions that come with the lesson.

How you learn

  • On your own, at your own pace: start any time, stop and pick up where you left off
  • Read the notes for each lesson, with diagrams and example programs to run
  • Test yourself on the practice sheet after it. Answers are checked as you go and saved to your account
  • YouTube videos for the lessons are coming soon

Who this is for

  • ECE / EEE students, beginners welcome
  • No prior programming experience required
  • A laptop and the will to actually write code

Ready to learn C properly?