Pointers are used everywhere in C, so if you want to use the C language fully you have to have a very good understanding of pointers. They have to become comfortable for you. The goal of this section and the next several that follow is to help you build a complete understanding of pointers and how C uses them. For most people it takes a little time and some practice to become fully comfortable with pointers, but once you master them you are a full-fledged C programmer. C uses pointers in three different ways: ã C uses pointers to create dynamic data structures -- data structures built up from blocks of memory allocated from the heap at run-time. ã C uses pointers to handle variable parameters passed to functions. ã Pointers in C provide an alternative way to access information stored in arrays. Pointer techniques are especially valuable when you work with strings. There is an intimate link between arrays and pointers in C.