私はのDev-C++ v4.9.8.0を使用していると私はライン変更のconstプリミティブのみ生成する警告
const int i = 512;
i = 200;
を書いて、私はコンパイルに行ったとき、私はコンパイル時エラーを確認すると予想、ただ警告を得ました。私はDev-C++に、これをCプログラムにコンパイルしたいと言った。フードの下の私のコンパイラは、MinGW gcc v2.95です。これらはすべてWindows 7マシンで動作します。プログラムがconst
修飾子で宣言された値を変更しようとすると、コンパイル時エラーを生成する言語標準だと思っていました。スタンダードは、これは警告のみを保証すると言いますか?ここで
は私のプログラムです:
7 C:: `i」は
読み取り専用変数の\ C_Programs \練習\ main.cの [警告]割り当て#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
const int i = 512;
i = 250;
system("PAUSE");
return 0;
}
そしてここでは、コンパイルログです
gcc 2.95は_ancient_です。 –
@JamesMcNellis:うわー、そうです。 13歳:http://gcc.gnu.org/releases.html –
v4.5.2を使用しています(James McNellisのコメントにあるコメントを参照)。 – mring