Directivas de preprocesador
Las directivas de preprocesador, tales como #define y #ifdef, se utilizan normalmente para hacer que los programas de origen sean más fáciles de modificar y facilitar la compilación en diferentes entornos de ejecución. Las directivas del archivo de código fuente indican al preprocesador que realice acciones específicas. Por ejemplo, el preprocesador puede reemplazar tokens en el texto, insertar el contenido de otros archivos en el archivo de código fuente o suprimir la compilación de parte del archivo quitando secciones de texto. Las líneas de preprocesador se reconocen y se ejecutan antes de la expansión de macro. Por consiguiente, si una macro se expande en algo que se parezca a un comando de preprocesador, el preprocesador no reconocerá ese comando.
Las instrucciones de preprocesador utilizan el mismo juego de caracteres que las instrucciones del archivo de código fuente, con la excepción de que no se admiten secuencias de escape. El juego de caracteres utilizado en las instrucciones de preprocesador es el mismo que el juego de caracteres de la ejecución. El preprocesador también reconoce valores de caracteres negativos.
El preprocesador reconoce las siguientes directivas:
|
El signo de número (#) debe ser el primer carácter que no sea un carácter de espacio en blanco de la línea que contiene la directiva; pueden aparecer caracteres de espacio en blanco entre el signo de número y la primera letra de la directiva. Algunas directivas incluyen argumentos o valores. Cualquier texto que siga a una directiva (excepto un argumento o un valor que forme parte de la directiva) debe ir precedido por un delimitador de comentario de línea única (//) o incluido entre delimitadores de comentario (/* */). Las líneas que contienen directivas de preprocesador se pueden continuar precediendo inmediatamente la marca de fin de línea con una barra diagonal inversa (\).
Las directivas de preprocesador pueden aparecer en cualquier lugar de un archivo de código fuente, pero solo se aplican al resto del archivo de código fuente.