2016-04-16 18 views
-1

"\ b"は私のMacでは動作しませんでした。だから私はその理由を見つけようとした。Cのバージョンはどのように知ることができますか?

私はこの問題の原因がcのバージョンかもしれないと思います。

またはデバイスが可能性があります。あなたがそれを知っているなら、私を助けることができますか?ありがとうございました。

+1

'C'(標準)のバージョンを知るには、コンパイラのバージョンを調べて、デフォルトの' C標準バージョン 'を確認する必要があります – Michi

答えて

6

CのISO標準バージョンはC90、C99、C11の3つあります。あなたのプログラムが動作しているCのバージョンを知るには:

__STDC_VERSION__ 

マクロを確認してください。

  • C90の場合:マクロは定義されていません。
  • C99の場合:マクロは値199901Lで定義されます。
  • C11の場合、マクロは値201112Lで定義されます。一方

何が知りたいのはCのバージョンではありませんが、あなたのCコンパイラのバージョンであれば、他の回答の通り、gccclangの両方のために適切なオプション(--versionでコンパイラを実行例えば)。

コンパイラに応じて、異なるCバージョンをサポートできます。 -std=optiongccとし、clangを使用してコンパイルに使用するコンパイラのデフォルトCバージョンを変更するように要求することができます。たとえば、-std=c90-std=c99または-std=c11です。

+0

これはおそらく唯一有益な答えです。 – Michi

+0

'gcc --version'はOPをまったく助けません。 OPは、 'C 'のどのバージョンがデフォルトバージョンであるかを知る必要があることを知る必要があります.GCCバージョンではありません。 – Michi

関連する問題