Pointers and Memory
Stanford CS Education Library: a 31 page introduction to programming with
pointers and memory in C, C++ and other languages. Explains how pointers
and memory work and how to use them -- from the basic concepts through
all the major programming techniques. Can be used as an introduction to
pointers for someone with basic programming experience or as a quick review.
Many advanced programming and debugging problems only make sense with a
solid understanding of pointers and memory -- this document tries to provide
Topics include: pointers, local memory, allocation, deallocation, dereference
operations, pointer assignment, deep vs. shallow copies, the ampersand
operator (&), bad pointers, the NULL pointer, value parameters, reference
parameters, pointer to pointers, dynamic heap memory, memory ownership
models, and memory leaks. The article focuses on pointers and memory in
compiled languages like C and C++ with occasional notes about Java.
Up to the