Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Константное выражение вычисляется во время компиляции, а не во время выполнения, и может использоваться в любом месте, где можно использовать константу. Выражение константы должно оцениваться константой, которая находится в диапазоне представляемых значений для этого типа. Операнды константного выражения могут быть целыми константами, константами символов, константами с плавающей запятой, константами перечисления, типами sizeof , выражениями и другими константами.
Синтаксис
constant-expression:
conditional-expression
conditional-expression:
logical-OR-expression
logical-OR-expression
?
expression
:
conditional-expression
expression:
assignment-expression
expression
,
assignment-expression
assignment-expression:
conditional-expression
unary-expression
assignment-operator
assignment-expression
assignment-operator: один из
=
*=
/=
%=
+=
-=
<<=
>>=
&=
^=
|=
Нетерминалы для декларатора структуры, перечислителя, прямого декларатора, прямого абстрактного декларатора и помеченного оператора содержат constant-expression нетерминальный оператор.
Целочисленное константное выражение должно использоваться для указания размера элемента битового поля структуры, значения константы перечисления, размера массива или значения case константы.
Выражения констант, используемые в директивах препроцессора, подвергаются нескольким ограничениям. Они называются ограниченными константными выражениями. Ограниченное константное выражение не может содержать sizeof выражения, константы перечисления, приведение типов к любому типу или константы с плавающей запятой. Однако он может содержать специальный идентификатор) константного выраженияdefined (.