C Sabit İfadeleri
Sabit ifade, çalışma zamanında değil derleme zamanında değerlendirilir ve sabitin kullanabildiği herhangi bir yerde kullanılabilir. Sabit ifade, bu tür için temsil edilebilir değerler aralığındaki bir sabit olarak değerlendirilmelidir. Sabit ifadenin işlenenleri tamsayı sabitleri, karakter sabitleri, kayan nokta sabitleri, numaralandırma sabitleri, tür atamaları, sizeof
ifadeler ve diğer sabit ifadeler olabilir.
Sözdizimi
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
: biri
=
*=
/=
%=
+=
-=
<<=
>>=
&=
^=
|=
Yapı bildirimcisi, numaralandırıcı, doğrudan bildirimci, doğrudan soyut bildirimci ve etiketli deyim için terim olmayanları içerir constant-expression
.
Bir yapının bit alanı üyesinin boyutunu, numaralandırma sabitinin değerini, dizi boyutunu veya bir sabitin case
değerini belirtmek için tamsayı sabit ifadesi kullanılmalıdır.
Ön işlemci yönergelerinde kullanılan sabit ifadeler çeşitli kısıtlamalara tabidir. Bunlar kısıtlanmış sabit ifadeler olarak bilinir. Kısıtlanmış sabit ifade ifadeler, numaralandırma sabitleri, herhangi bir türe tür atamaları veya kayan tür sabitleri içeremez sizeof
. Ancak özel sabit ifade defined (
tanımlayıcısını )
içerebilir.