Next: $PI, Previous: $OUTPUT_LINE, Up: Built-in functions [Contents][Index]
$P: The C preprocessor symbol$P is (essentially) a synonym for ‘$UNQUOTE("#")’
(see $UNQUOTE). It is useful for constructing FWEB macro
definitions that expand to C preprocessor statements. For example,
@m CHECK(flag)
$P if(flag)
special code;
$P endif
Another version of the preprocessor symbol is $PP (see $PP).
For most purposes, $P and $PP will behave in exactly the
same way. The difference between them is that $P is treated as a
string (without surrounding quotes), whereas $PP is treated as a
character. The character nature of $PP is used by FORTRAN
to reset the column number to 1, so C-like preprocessor commands appear
there rather than in column 7.
For further discussion of strings and the differences between $P
and $PP, see Strings and quotes.