Categorías destacadas
programacion php    
Artículo
7
¡votar!

 Lenguaje C


El preprocesador

El preprocesador es una parte del compilador que se ejecuta en primer lugar, cuando se compila un fuente C y que realiza unas determinadas operaciones, independientes del propio lenguaje C. Estas operaciones se realizan a nivel léxico y son la inclusión de otros textos en un punto del fuente, realizar sustituciones o eliminar ciertas partes del fuente. Debemos tener en cuenta que el preprocesador trabaja únicamente con el texto del fuente y no tiene en cuenta ningún aspecto sintáctico ni semántico del lenguaje.

El control del preprocesador se realiza mediante determinadas directivas incluidas en el fuente. Una directiva es una palabra que interpreta el preprocesador, que siempre va precedida por el símbolo # y que está situada a principio de línea.

La directiva #define se utiliza para definir una macro. Las macros proporcionan principalmente un mecanismo para la sustitución léxica. Una macro se define de la forma #define id secuencia. Cada ocurrencia de id en el fuente es sustituida por secuencia. Puede definirse una macro sin una secuencia de caracteres. Una macro se puede "indefinir" mediante la directiva #undef.

#define MSG01 "SCI-I-START: Starting system kernel\n"
#define MSG02 "SCI-I-STOP: Stopping system kernel\n"

void print_msg ( void ) {
  if ( check_state() == START ) printf(MSG01);
  else printf(MSG02);
}

El estado de una macro, si está definida o no, se puede comprobar mediante las directivas #ifdef y #ifndef. Estas dos directivas se deben completar con una #endif y, el texto comprendido entre ambas es procesado si la macro está definida. Todas las directivas deben ser completadas en el mismo fuente y pueden ser anidadas.

#ifndef M_PI
  #define M_PI 3.1415927
#endif

El preprocesador nos permite también incluir también otros ficheros en un fuente C. Esto se consigue con la directiva #include. Esta puede tomar tres formas: #include, #include "fichero" y #include macro. La diferencia entre la primera y la segunda está en el lugar dónde se buscará el fichero en cuestión. Normalmente se utiliza la primera para ficheros proporcionados por la librería del compilador y la segunda para ficheros creados por el programador.

Publicado por:
Luis Raymundo
Recomendar
a un amigo
Compartir
en redes
 
Comentarios
 
BBDD
Entornos de desarrollo
Entretenimiento
Herramientas
Internet
Lenguajes de script
Lenguajes imperativos
Lenguajes orientados a objeto
Otros lenguajes
Plataformas
Teoría
Varios
Copyright © 1998-2011 Programación en Castellano. Todos los derechos reservados
Datos legales | Politica de privacidad | Contacte con nosotros | Publicidad

Diseño web y desarrollo web. Un proyecto de los hermanos Carrero.

Red internet:
Juegos gratis | Servidores dedicados
Más internet: Password | Directorio de weblogs | Favicon