8.6.3. Constant Pointer to Nonconstant Data
A constant pointer to nonconstant data is a pointer that always points to the same memory location, and the data at that location can be modified through the pointer. Pointers that are declared
const must be initialized when they’re declared, but if the pointer is a function parameter, it’s initialized with the pointer that’s passed to the function.
The program of Fig. 8.11 attempts to modify a constant pointer. Line 11 declares pointer
ptr to be of type
int * const. The declaration is read from right to left as “
ptr is a constant pointer to a nonconstant integer.” The pointer is initialized with the address of integer variable
x. Line 14 attempts to assign the address of
ptr, but the compiler ...