Pointers are primarily for dynamic memory allocation, though there are a variety of other uses for them as well.