我正在使用编程原理和使用C ++实践来学习C ++编程语言。 我现在在第4章,在本章中,本书介绍了表达的概念,但我根本无法理解:
程序中最基本的构建块是表达式。表达式计算来自多个操作数的值。 C ++中最简单的表达式只是一个文字值,如11,'c',“hello”。变量的名称也是表达式。变量表示名称的对象。
为什么文字被视为表达?为什么变量的名称被认为是表达式?
答案 0 :(得分:4)
表达式 - 在编程语言中,在数学中,在语言学中 - 是在组合上(或归纳地)定义的。因此,表达式通常由子表达式构成,例如x*2+y*4
由加法运算符x*2
连接的两个子表达式y*4
和+
组成。
但是你需要一个基本案例(最原子和最简单的表达式)。这些是文字(2
)和变量(x
) - 如果它们中的任何一个不是表达式2*x
就不能是表达式(因为二进制乘法的两个操作数{{1}是子表达式)。
请注意,在C和C ++中,分配和函数调用是表达式
答案 1 :(得分:2)
可以这样想:表达式是一系列产生值的步骤。因此,4+3
是两步表达式,因为您(1)以数字4
开头,(2)向其添加3
。
因此,7
可以被视为单步序列,因为只有一个"动作"执行:(1)从数字7
开始。
因此,a = 4+3;
和a = 7;
都可以推广到a = <expression>;
。
答案 2 :(得分:1)
表达式是“指定计算的运算符和操作数序列”(http://en.cppreference.com/w/cpp/language/expressions)。
让我们看一个简单的表达式:3 + 3.当你评估这个表达式时,你会得到结果6.
所以让我们看另一个表达式:3。当你评估这个表达式时,你会得到结果3.
文字被认为是一个表达式,因为文字是一种常量,常量是具有固定值的表达式。
变量也被视为表达式,因为它可以在另一个表达式中用作操作数,也可以用作表达式。
在软件设计中,复合模式可用作表达式的表示。