重複の可能性:
C の定数とポインター
この小さなコードがあります。私はgccコンパイラを使用しています:
#include <stdio.h>
int main()
{
const int a=10;
int *d;
d=&a;
*d=30;
printf("%d %d\n",a,*d);
return 0;
}
コンパイル時に警告が表示されます。
「割り当ては、ポインター ターゲット型から修飾子を破棄します」
しかし、エラーはありません。出力は次のとおりです: 30 30
それでは、プログラムの実行中に値が固定されている const 変数を維持するという目的に反していませんか (間違っている場合は修正してください)。