C Programming Course

  • Introduction  (1h)
  • Installation
  • Exploring code (1h)
  • Basics of a Program (1h)
  • Data types and variables (2h)
    • Overview
    • Basic Data types
    • Enums and Chars
    • Format specifiers
    • Program command line arguments
    • Print the area of a rectangle (challenge, demo)
    • Create and use enum type (challenge, demo)
  • Operators (2h)
    • Basics
    • Bitwise
    • Cast and Sizeof operators
    • Operator Precedence
    • Operator precedence
    • Convert minutes to year, month and days (challenge, demo)
    • Print the size of a basic data types (challenge, demo)
  • Control flow (3h)
  • Arrays (2h)
    • Creating and using arrays
    • Initialisation
    • Multidimensional arrays
    • Variable length arrays
    • Generate prime numbers (challenge, demo)
    • Create a simple Weather program (challenge, demo)
  • Functions (2h)
    • Basics
    • Defining functions
    • Arguments and Parameters
    • Returning data
    • Local and global variables
    • Write a function (challenge, demo)
    • Create a Tic Tac Toe game (challenge, demo)
  • Character Strings (2h)
    • Overview
    • Defining a string
    • Constant String
    • string functions
    • searching, tokenising, and analysing
    • converting string
    • understanding char arrays (challenge, demo)
    • utilising common string functions (challenge, demo)
  • Debugging (1.5h)
    • Overview
    • Understanding the call stack
    • gdb
    • common C mistakes
    • understanding compiler errors
  • Pointers (4h)
    • Overview
    • Defining pointers
    • Accessing pointers
    • Pointer basics (Challenge, demo)
    • Using pointer (challenge, demo)
    • Pointers and const
    • void pointers
    • Pointers and arrays
    • Pointer arithmetic
    • Pointer arrays examples
    • Pointers and strings
    • Counting characters in a string (challenge, demo)
    • Pass by reference
    • Using pointers as parameters (challenge, demo)
    • dynamic memory allocation
    • malloc, calloc and realloc
    • Using dynamic memory (challenge, demo)
  • Structures (2h)
    • Overview
    • Creating and using structures
    • Structures and arrays
    • Nested structures
    • structures and pointers
    • structures and functions
    • Declaring and initialising a structure (challenge, demo)
    • Structure pointers and functions
  • IO (2h)
    • Overview
    • Accessing Files
    • Reading for a file
    • Writing to a file
    • Finding your position in a File
    • Find the number of lines in a File (challenge, demo)
    • Convert characters in a file to uppercase (challenge, demo)
    • Print the contents of a file in reverse order
  • Standard C Library (1h)
    • Standard header files
    • Various functions
    • Math functions
    • Utility functions
  • Conclusion (1h)
    • Course summary
    • C Interview preparation and insights.