gpt4 book ai didi

c++ - C 和 C++ 标准中 "expression"的定义

转载 作者:太空宇宙 更新时间:2023-11-03 10:22:28 25 4
gpt4 key购买 nike

我问这个问题是因为我正在更新我的 C 和 C++ 类(class) Material ,而且我已经有过去的学生问过这个问题......

来自 ISO/IEC 9899:2017 第 6.5 节表达式¶1(以及 C++ 标准中的类似内容):

"An expression is a sequence of operators and operands that specifies computation of a value, or that designates an object or a function, or that generates side effects, or that performs a combination thereof. …"

因为标准制定者显然会仔细选择他们的用词,所以使用短语“运算符和操作数的序列”似乎有可能误导我。它似乎表明要被视为一个表达式,必须有多个运算符和多个操作数。因此,像 123 这样的文字或像 XYZ 这样的变量不会被视为表达式,因为没有运算符,如果没有运算符,它们当然不能被视为操作数。

但是,如果 123 和 XYZ 实际上是表达式,将短语“运算符和操作数的序列”替换为“一个或多个字符的序列”或类似的东西不是更准确吗?

请告诉我我对标准陈述的误解是什么。

最佳答案

and similar in the C++ standard

我不知道 C 标准,但是 the C++ standard将此声明置于非规范 符号中。它对 C++ 没有规范值(value),所以它应该被理解为通俗的。

关于c++ - C 和 C++ 标准中 "expression"的定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58574748/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com