首页 >后端开发 >C++ >C 和 C 表达式中操作数的求值顺序是指定的还是未指定的?

C 和 C 表达式中操作数的求值顺序是指定的还是未指定的?

Barbara Streisand
Barbara Streisand原创
2024-11-01 11:26:30969浏览

Is the order of evaluation of operands in C and C   expressions specified or unspecified?

C 和 C 中操作数的求值顺序

问题:

在如下表达式中“a b”,是指定操作数的求值顺序或未指定?

答案:

C 和 C 中操作数的求值顺序均未指定.

详细信息:

  • 在 C 中:

    • 对于用户定义类型,“a b”是函数调用,标准规定函数参数的求值顺序是未指定。
    • 对于普通运算符,标准指定操作数的求值顺序也是未指定的。
  • 在 C 中(假设):

    • 标准的写法与C类似,因此 C 中也可能未指定操作数的求值顺序。

附加信息:

它是需要注意的是,即使未指定求值顺序,也可以保证无论求值如何,表达式的结果都是相同的 命令。这是因为编译器负责确保正确计算表达式。

以上是C 和 C 表达式中操作数的求值顺序是指定的还是未指定的?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn