拨开荷叶行,寻梦已然成。仙女莲花里,翩翩白鹭情。
IMG-LOGO
主页 文章列表 C 二进制文字

C 二进制文字

白鹭 - 2022-02-10 2156 0 0

我知道C 中的Binary Literal是从C 14标准化的

但是,虽然我修复了stdas c 11,但它运行良好。因为实际上,我预计会出现错误。以下是我预计会出现错误的代码。

int main(){
  int a = 0b1010; // an error is expected
  std::cout << a << std::endl;
}

另外,我已经使用以下命令编译并执行了上述档案。

g   -std=c  11 -Wall main.cpp -o runfile
./runfile

没有出现预期结果的原因是什么?有什么我做错了吗?

uj5u.com热心网友回复:

早在 C 14 标准化之前,二进制文字就一直是 GCC 中的编译器扩展。您可以编译-pedantic以警告扩展并将-pedantic-errors这些特定警告提升为错误:

<source>:3:11: error: binary constants are a C  14 feature or GCC extension
    3 |   int a = 0b1010; // an error is expected
      |           ^~~~~~
标签:

0 评论

发表评论

您的电子邮件地址不会被公开。 必填的字段已做标记 *