If
4.2.2 If
The ‘#if
’ directive allows you to test the value of an arithmetic expression, rather than the mere existence of one macro. Its syntax is
#if expression controlled text #endif /* expression */
expression is a C expression of integer type, subject to stringent restrictions. It may contain
- Integer constants.
- Character constants, which are interpreted as they would be in normal code.
- Arithmetic operators for addition, subtraction, multiplication, division, bitwise operations, shifts, comparisons, and logical operations (
&&
and||
). The latter two obey the usual short-circuiting rules of standard C. - Macros. All macros in the expression are expanded before actual computation of the expression's value begins.
- Uses of the
defined
operator, which lets