These exercises are intended to test only a basic understanding of
the preprocessor, suitable for a beginner. Many users will never
need a more detailed understanding.
Exercise 7.1. How would you arrange that the identifier
MAXLEN is replaced by the value
Exercise 7.2. What is likely to cause problems in a definition of
#define VALUE 100+MAXLEN?
Exercise 7.3. Write a macro called
REM which takes
two integer arguments and ‘returns’ the remainder when the first
is divided by the second.
Exercise 7.4. Repeat the last example, but use casts so that any
arithmetic type of argument may be used, assuming that there are no
Exercise 7.5. What do the
<> brackets around
a filename in a
#include directive signify?
Exercise 7.6. What would
"" mean in place of
Exercise 7.7. How would you use the preprocessor to select
implementation-specific fragments of a program?
Exercise 7.8. What sort of arithmetic does the preprocessor