...
A preprocessing directive of the form:
#
define
identifier replacement-list new-line
...
In this non-compliant code example, PI
is defined as an object-like macro. Following the definition, each subsequent occurrence of the string "PI" is replaced by the string "3.14159f" by textual substitution.
...