Course Highlights
  • Pointers and addresses
  • Indirection and multiple indirection
  • Generic pointers and casts
  • Memory allocation and reallocation
  • Pointer arithmetic
  • Singly and doubly linked lists
  • Queues and stacks
  • Deep and shallow copying
  • Common pointer errors
Curriculum

9 Topics
What is this course about?
How to use this course
Course Notes and FAQ
Source Code Archive
What is a pointer?
Pointer variables
Indirection
Pointer Basics
Study Notes – Step One

24 Topics
What is the relationship between a pointer and an array (or string)?
How to display pointer values
Arrays addresses and pointers
Multiple indirection
Multiple indirection with integers
Multiple Indirection with strings
Indirection and commandline args
Generic Pointers
Allocating memory
Malloc and sizeof
Functions that cause errors or warnings
calloc
free
realloc
Pointer arithmetic
Calculating an array index
Pointers to structs
Data type alignment
Type alignment on boundaries
Type alignment and pointer arithmetic
Debugging C Programs
Debugging Multiple Indirection
Addresses and Indirection
Study Notes – Step Two

22 Topics
Arrays and Lists
What is a linked list?
Singly linked lists
To free or not to free?
Doubly linked lists
Programming a doubly-linked List
Initializing a doubly-linked list
Implementing a doubly linked list
What is a queue?
Queues
What is a stack?
Stacks
Pushing and popping
Calculating the length of list
Copying a list
Removing an element from within a list
Adding an element into a list
Function pointers
Function pointer declarations
An array of function pointers
Lists and Data Structures
Study Notes – Step Three

14 Topics
Why do pointers cause problems?
Deep and shallow copies
A deeper look at deep and shallow copies
Incorrect memory allocation
Casting pointers
Incorrect casts
Freeing already freed memory
Memory leaks
Using freed memory
Pointers out of scope
Dereferencing a null pointer
Common pointer problems
Study Notes – Step Four
And finally...

  Write a Review

Advanced C Programming: Pointers

Go to Paid Course