Difference between const int*, const int * const, and int const * in C/C++?

C++Server Side ProgrammingProgramming

The above symbols mean the following −

int* - Pointer to int. This one is pretty obvious.
int const * - Pointer to const int.
int * const - Const pointer to int
int const * const - Const pointer to const int

Also note that −

const int * And int const * are the same.
const int * const And int const * const are the same.

If you ever face confusion in reading such symbols, remember the Spiral rule: Start from the name of the variable and move clockwise to the next pointer or type. Repeat until expression ends.

Published on 28-Feb-2018 11:53:37