#define 
      
    La directiva #define tiene una funcionalidad
    extra que puede utilizarse para definir lo que se conoce como
    “macros”. El reemplazo que hace el preprocesador del símbolo
    por su equivalente puede incluir parámetros. En el siguiente ejemplo se
    define una macro para reemplazar el símbolo DEMASIADO_GRANDE(v)
    la comparación de v dada con el valor 1000.
#define DEMASIADO_GRANDE(v) (v >= 1000)La macro DEMASIADO_GRANDE(v) se puede utilizar
    en el código con un nombre de variable en lugar de v que será
    utilizado al reemplazarse el símbolo por su equivalente tal y como se
    muestra en el siguiente ejemplo:
int i;
if (DEMASIADO_GRANDE(i)) /* Código fuente */
{ 
  ...
}
if ((i >= 1000))  /* Código recibido por el traductor */
{ 
  ...
}