Константное выражение – это выражение, вычисление которого дает в результате константу (причем лежащую в диапазоне, определенном для констант данного типа). Вычисление константных выражений выполняется так же, как и вычисление обычных выражений. Константные выражения можно использовать везде, где допускается использование самих констант (например, если требуется вычислить границы массива, в выражениях case, для задания длины битового поля) как инициализирующие значения элемента перечисления (выражения, вычисление которых дает в результате целочисленные константы). Константные выражения не могут содержать следующих операций, если только они не содержатся в операнде sizeof():
· присваивание;
· запятая;
· декремент;
· инкремент;
· вызов функции.