【C】constのメモ
1. const int *p;
「値を変更できないint」を指すポインタ。アドレスは書き換えられるけど、アドレスが指す中身は変更できない。
【例】
const int *p; int *temp; p = temp; // OK *p = 5; // エラー
2. int * const p;
int型への「const修飾された」ポインタ(int *p; は int型へのポインタ)。アドレスが指す中身は書き換えられるけど、アドレスそのものは変更できない。
【例】
int * const p; int *temp; p = temp; // エラー *p = 5; // OK
3. const int * const p;
「値を変更できないint」への「値が変更できないポインタ」。アドレスの中身が変更できない、アドレスも変更できない。
【例】
const int * const p; int *temp; p = temp; // エラー *p = 5; // エラー