Traditional Preprocessor Usage
 
 
- Defining numeric constants                       (#define MAX_SIZE 1000)
- Enumerating symbolic constants with no intrinsic value                           (#define ERROR 0, #define OK 1)
- Defining code to avoid function calling overhead
- Defining commonly used type-independent code