【问题标题】:C type casts and addition precedenceC 类型转换和加法优先级
【发布时间】:2011-03-22 05:34:42
【问题描述】:

下一个表达式的优先级是什么?

item = (char*)heap + offset;

(char*)(heap + offset) 还是((char*)heap) + offset

【问题讨论】:

    标签: c syntax c99


    【解决方案1】:

    根据优先表转换trumps二进制加法。

    【讨论】:

    • 这张表超级好用。谢谢。
    【解决方案2】:

    它是((char *)heap) + offset。强制转换的优先级远高于加法。

    【讨论】:

    • 这很正确,但如果编码人员真的不清楚,那么我建议实际使用括号,如下所示。
    • 本案原作者编码器没有优先顺序疑问,而另一位维护编码器有优先顺序疑问时,问题就出现了。
    【解决方案3】:
    ((char*)heap) + offset
    

    【讨论】:

      【解决方案4】:

      演员首先完成,因为它具有更高的优先级。 您可以在C precedence table 中查找!

      【讨论】:

        猜你喜欢
        • 2014-07-05
        • 1970-01-01
        • 1970-01-01
        • 2023-02-09
        • 1970-01-01
        • 1970-01-01
        • 2012-05-04
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多