C
Introduction
Setup
Low-Level Programming
Explore the world of C programming: what it is, why it's essential for low-level development, its history, and how to set up your C development …
ACCESS >>C
Fundamentals
Data Types
Variables
Operators
Master the fundamental building blocks of C programming: data types, how to declare and initialize variables, and use various operators for …
ACCESS >>C
Control Flow
Conditionals
Loops
Beginner
Learn to control the execution flow of your C programs using conditional statements (`if`, `else`, `switch`) for decision-making and looping …
ACCESS >>C
Functions
Modularity
Code Organization
Beginner
Understand C functions: how to define, declare, and call them to organize your code into reusable, modular blocks, improving readability and …
ACCESS >>C
Pointers
Memory
Low-Level
Intermediate
Dive deep into C pointers: understand memory addresses, declare and use pointers, perform pointer arithmetic, and learn about the crucial concept of …
ACCESS >>C
Arrays
Strings
Collections
Pointers
Intermediate
Learn to manage collections of data in C using arrays for ordered elements and special string handling techniques, including their close relationship …
ACCESS >>C
Memory Management
Pointers
Heap
Dynamic Allocation
Intermediate
Explore dynamic memory management in C using `malloc`, `calloc`, `realloc`, and `free` to allocate and deallocate memory at runtime, a crucial skill …
ACCESS >>C
Data Structures
Memory
Enums
Typedef
Intermediate
Learn to define and use custom data types in C with structures (structs) for grouping related data, unions for memory-efficient storage, and enums for …
ACCESS >>C
File IO
Input Output
Files
Intermediate
Learn C file input/output (I/O): open, read, write, and close files, including text and binary modes, error handling, and file positioning.
ACCESS >>C
Preprocessor
Macros
Directives
Advanced
Uncover the C preprocessor: learn about directives like `#include`, `#define`, conditional compilation (`#ifdef`, `#ifndef`), and powerful …
ACCESS >>C
Bitwise
Operators
Low-Level
Embedded
Intermediate
Master C bitwise operations: understand bitwise AND, OR, XOR, NOT, and shift operators to manipulate individual bits, crucial for low-level …
ACCESS >>C
Pointers
Functions
Arrays
Advanced
Intermediate
Deepen your C pointer expertise with advanced topics: pointers to pointers, array of pointers, pointers to arrays, and the powerful concept of …
ACCESS >>C
Command Line
Environment Variables
System Programming
Intermediate
Explore how C programs interact with the operating system via command-line arguments (`argc`, `argv`) and environment variables (`getenv`, `putenv`), …
ACCESS >>C
Memory
Optimization
Performance
Advanced
Low-Level
Delve into advanced memory concepts in C: understand structure padding, data alignment, their impact on performance, and explore various code …
ACCESS >>C
Assembly
Low-Level
Systems Programming
Advanced
Discover how to integrate C code with Assembly Language, including calling Assembly functions from C, inlining Assembly, and understanding their …
ACCESS >>C
Project
Calculator
Command Line
Beginner
Hands-on
Build a functional command-line calculator in C. This project integrates input parsing, basic arithmetic, and function organization, applying concepts …
ACCESS >>C
Project
Memory Management
Heap
Advanced
Systems Programming
Build a basic custom memory allocator in C. This project offers deep insight into memory management, `malloc`'s inner workings, and low-level memory …
ACCESS >>C
Learning
Resources
Books
Online Courses
Community
A curated list of resources for continuing your C programming journey: online courses, books, official documentation, communities, and advanced topics …
ACCESS >>