int x = 5;
const int *p = &x;
Это присваивает адрес x
указателю const int p
. Это означает, что вещь, на которую указывает p
, является постоянной и не может быть записана путем разыменования p
.
int * const q = &x;
Это присваивает адрес x
константному указателю на int q
. Это означает, что указатель является постоянным и не может быть изменен впоследствии, однако вы можете изменить x
, отменив ссылку на p
.