为什么表达式和语句之间存在差异

可能重复:
表达与陈述

表达是什么意思? 评估某事的东西会返回一个值吗?

它与声明有何不同? 语句是否可以包含表达式,反之亦然?

表达式会“返回”一个值,但它们可能会被转换为(void) 。 声明不评估任何内容,只有副作用。

例如; 是一个声明本身,评估为零,没有副作用。

表达式是一个返回值的执行指令(即使它返回一个void )。

语句用于形成程序的序列(例如, if-thenwhile-do语句)。 语句可以是简单的也可以是复杂的,可以包含0个或更多表达式。

正如@FrédéricHamidi所说,a ; 是一个有效的声明。

维基:

  • 表达
  • 声明