In
computer science, a
preprocessor is a
program that processes its input data to produce output that is used as input to another program. The output is said to be a
preprocessed form of the input data, which is often used by some subsequent programs like
compilers. The amount and kind of processing done depends on the nature of the preprocessor; some preprocessors are only capable of performing relatively simple textual substitutions and
macro expansions, while others have the power of full-fledged
programming languages.