CF
CodeForge

Step-by-Step Curriculum

Your Learning Path

From "Hello World" to memory management and OOP — follow the path and build real skills.

C

C Fundamentals

The language that built modern computing

LESSON 1

Getting Started

Install a compiler, write your first C program, and understand the build process.

LESSON 2

Variables & Data Types

int, float, char, double — learn how C stores and represents data.

LESSON 3

Operators & Expressions

Arithmetic, logical, and bitwise operators. Build complex expressions.

LESSON 4

Control Flow

if, else, switch, for, while. Make decisions and repeat actions in your code.

LESSON 5

Functions

Break programs into reusable blocks. Parameters, return values, recursion.

LESSON 6

Arrays & Strings

Store collections of data. Manipulate text the C way.

LESSON 7

Pointers

C's most powerful feature. Understand memory addresses and indirection.

LESSON 8

Structures

Group related data into custom types. Model real-world entities.

LESSON 9

File I/O

Read and write files. Persist data beyond program execution.

LESSON 10

Memory Management

malloc, free, and the heap. Take full control of system memory.

LESSON 11

Preprocessor & Macros

Conditional compilation and code generation with #define and #include.

LESSON 12

Build a Project

Combine everything into a working C application.

C++

C++ Mastery

Object-oriented power, modern features, and high performance

LESSON 1

C++ vs C

What's new in C++. The extra features that change everything.

LESSON 2

Classes & Objects

The core of OOP. Model real-world entities with state and behavior.

LESSON 3

Constructors & Destructors

Control how objects are created and destroyed. RAII introduced.

LESSON 4

Inheritance

Build hierarchies of types. Reuse and extend existing code.

LESSON 5

Polymorphism

Virtual functions, abstract classes, and dynamic dispatch.

LESSON 6

Templates

Write generic code that works with any type. The STL foundation.

LESSON 7

STL Containers

vector, map, set, list — the battle-tested data structures.

LESSON 8

Smart Pointers

unique_ptr, shared_ptr, weak_ptr. Modern memory management done right.

LESSON 9

Lambda Expressions

Write small anonymous functions inline. Functional C++.

LESSON 10

Move Semantics

Transfer resources instead of copying. Massive performance wins.

LESSON 11

Exception Handling

try, catch, throw. Handle errors gracefully and safely.

LESSON 12

Build a Project

Apply C++ to a real-world application from scratch.

Try It Yourself

Your First C Program

hello.c
#include <stdio.h>

int main() {
    printf("Hello, World!\\n");
    return 0;
}