Выражение может не иметь оператора. Например, в следующем:
int a = 0;
a;
a
является выражением. Выражение, чтобы процитировать стандарт C ++, это «последовательность операторов и операндов, которая определяет вычисление» (C ++ 03 5/1). Здесь a
является «операндом», хотя оператора нет.
Подвыражение - это любое выражение, которое является частью большего выражения. Итак, в
int a = 0, b = 0, c = 0, d = 0;
a * b + c * d;
a * b
и c * d
являются подвыражениями.
Слово «составной» обычно используется в отношении операторов , а не выражений . Составной оператор - это пара фигурных скобок, которые могут содержать последовательность других операторов. Например, тело функции почти всегда является составным оператором, как и многие тела цикла.
Обычно сложные выражения просто называются «выражениями», а их части называются подвыражениями.