gpt4 book ai didi

c++ - c++中的表达式和表达式语句是什么?

转载 作者:IT老高 更新时间:2023-10-28 12:49:57 25 4
gpt4 key购买 nike

我读过 c++ 中的语句通常以分号结尾;所以这可能有助于解释表达式语句是什么。但是,如果你举个例子,你会怎么称呼表达式呢?

在这种情况下,两者都只是语句或表达式语句或表达式吗?

int x;
x = 0;

最佳答案

表达式 是“指定计算的一系列运算符和操作数”(这是 C++ 标准中给出的定义)。例如 422 + 2"hello, world"func("argument")。赋值是 C++ 中的表达式;函数调用也是如此。

我没有看到术语“语句”的定义,但基本上它是执行某些操作的代码块。示例是复合语句(由 { ... } 中包含的零个或多个其他语句组成)、if 语句、goto 语句、return 语句和 expression 语句。 (在 C++ 中,但不是在 C 中,声明被归类为语句。)

statementexpression 这两个术语由语言语法非常精确地定义。

表达式语句是一种特殊的语句。它由一个可选的表达式和一个分号组成。计算表达式并丢弃任何结果。通常这在语句有副作用时使用(否则没有多大意义),但你可以有一个表达式语句,其中表达式没有副作用。例如:

x = 42; // the expression happens to be an assignment

func("argument");

42; // no side effects, allowed but not useful

; // a null statement

null 语句是一种特殊情况。 (我不确定为什么要这样对待它;在我看来,将其作为一种不明确的陈述会更有意义。但这就是标准定义它的方式。)

注意

return 42;

是一个语句,但它不是一个表达式语句。它包含一个表达式,但该表达式(加上 ;)并不构成整个语句。

关于c++ - c++中的表达式和表达式语句是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7479946/

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