A variable is a piece of memory dedicated to the value that variable holds at any time.

In a C++ our programs will have memory split into two parts: the stack where variables are declared and the heap, memory that is not used but available for allocation while the program runs.

The memory location for our programs will be different each time.

Note: The stack and heap are important parts of dynamic memory allocation but we won't get into too much depth on that now but remember pointers are useful for this.