C Interview Questions and Answers

 

What is a const pointer in C?

The access modifier keyword const is a promise the programmer makes to the compiler
that the value of a variable will not be changed after it is initialized. The compiler
will enforce that promise as best it can by not enabling the programmer to write
code which modifies a variable that has been declared const.



A const pointer, or more correctly, a pointer to const, is a pointer which points
to data that is const (constant, or unchanging). A pointer to const is declared
by putting the word const at the beginning of the pointer declaration. This declares
a pointer which points to data that can’t be modified. The pointer itself can
be modified. The following example illustrates some legal and illegal uses of a
const pointer:



const char *str = hello;



char c = *str /* legal */



str++; /* legal */



*str = ‘a’; /* illegal */



str[1] = ‘b’; /* illegal */

Posted by:Richards