page contents

C语言同意一些令人震惊的结构,下面的结构是合法的吗,如果是它做些什么?

轩辕小不懂 发布于 2021-10-11 14:34
阅读 676
收藏 0
分类:C/C++开发
  • c++
  • inta=5,b=7,c;c=a+++b;

    2118
    Nen
    Nen
    - 程序员

    这个问题将做为这个测验的一个愉快的结尾。不管你相不相信,上面的例子是完全合乎语法的。问题是编译器如何处理它?水平不高的编译作者实际上会争论这个问题,根据最处理原则,编译器应当能处理尽可能所有合法的用法。因此,上面的代码被处理成: c = a++ + b; 因此, 这段代码持行后a = 6, b = 7, c = 12。 如果你知道答案,或猜出正确答案,做得好。如果你不知道答案,我也不把这个当作问题。我发现这个问题的最大好处是:这是一个关于代码编写风格,代码的可读性,代码的可修改性的好的话题

    请先 登录 后评论