An expression may not have an operator. For example, in the following:
int a = 0;
a;
ais an expression. The expression is to quote the C ++ standard "sequence of operators and operands that define the calculation" (C ++ 03 5/1). Here ais the "operand", although there is no operator.
A subexpression is any expression that is a piece of a larger expression. So in
int a = 0, b = 0, c = 0, d = 0;
a * b + c * d;
a * b c * d .
"" , . , . , , .
"", .