A pointer is a derived data type found in C that is made up of one of the basic data types available in C, the memory addresses in the pointers remain as their values. Since these memory addresses are locations in computer memory where program instructions and data stores are located, pointers can be used to access and manage data stored in memory.
Pointers are undoubtedly one of the most distinct and exciting features of the C language. It has added power and flexibility to the language. Although they appear a little confusing and difficult to understand for a beginner, they are a powerful tool and handy to use once they are mastered.
Pointers are used frequently in C, as they offer a number of benefits to the programmers. They include :