11

Visual Studio 2012 を使用して単純な Win32 C プログラムを開発しています。VS コンパイラが C89 しかサポートしていないことは知っていますが、この制限を無効にする方法があるかどうか知りたいです。

特に、スコープ ブロックの先頭だけでなく、コード内の任意の場所で変数を宣言したいと考えています (C89 で必要)。

前もって感謝します。

4

3 に答える 3

13

私が見る選択肢:

  • MSVC に固執し、C++ に切り替える
  • MSVC に固執し、C99 を C90 に変換するプリコンパイラを使用する ( Comeauc99-to-c89 )
  • C 言語 (Intel、MinGW、Clang、Pelles-C など) の最新のリビジョンをサポートするツールチェーンに切り替えます。
于 2012-11-09T13:43:28.557 に答える
9

これは時代遅れのスレッドのようですが、同じ質問を探しているときに最初にここにたどり着いたので、更新を投稿する必要があると思いました:

VS13 の時点で、Visual C++ コンパイラは C99 スタイルの変数宣言をサポートしています。詳細はこちら:

http://blogs.msdn.com/b/vcblog/archive/2013/06/28/c-11-14-stl-features-fixes-and-breaking-changes-in-vs-2013.aspx

于 2014-08-14T22:47:36.753 に答える
-5

C++ コンパイラを使用してアプリをビルドします。これが最も簡単な方法です。ファイルに *.cpp という名前を付けるだけで、C コードを記述できます。

于 2012-11-09T13:31:30.000 に答える