Linux上でコンパイルが通っているはずのCのソースをVisual C++ 2005でコンパイルしようとすると下記エラーが発生してコンパイルできない。
error C2143: 構文エラー : ‘;’ が ‘型’ の前にありません。
具体的にはこんな感じのコードです。
int max; max = 10; for (int i = 0; i < max ; i++){ // error C2143 printf("Test First!\n"); }
また例によって例の如くエラーメッセージが意味不明なんですが、プロジェクトの設定で、[C++ コードとしてコンパイル (/TP)]とするか、下記のように書き換えればOKになります。
int max; int i; // iの宣言を移動 max = 10; for (i = 0; i < max ; i++){ // OK! printf("Test First!\n"); }
そうです。
何だかもう忘れてましたが、Cでは宣言の前に何らからの処理コードが入ってたらいけないんですね。