2016-04-16 86 views
-1

“\ b”在我的Mac上无法使用。所以我试图找到原因。我如何知道c的版本?

我认为这个问题的原因可能是c的版本。

或设备可能。如果你知道它,你能帮助我吗?谢谢。

+1

要知道您的'C'(哪个标准)版本,您需要找出您的编译器版本,并检查其默认'C标准版本' – Michi

回答

6

C:C90,C99和C11有三种ISO标准版本。要知道您的程序正在运行哪个C版本,请检查:

__STDC_VERSION__ 

宏。

  • 对于C90:宏未定义。
  • 对于C99:宏定义为值199901L。
  • 对于C11:宏定义为值201112L。

在另一方面,如果你想知道什么是版本不是C,但你的C编译器的版本,其他的答案表明,运行与适当的选项都gccclang编译器(--version例如)。

根据您的编译器,它可以支持不同的C版本。您可以要求更改用于编译的编译器默认C版本,使用-std=optiongccclang,例如:-std=c90-std=c99-std=c11

+0

这可能是唯一有用的答案。 – Michi

+0

'gcc --version'根本无助于OP。 OP需要知道他需要知道'C'的哪个版本是默认版本......而不是'GCC'版本。 – Michi

相关问题