Lenguaje C: directiva #ifdef

Los datos expuestos en este blog, son solo de índole informativo. Por favor realiza siempre una copia de seguridad antes de realizar cualquier cambio en tu proyecto.

Lenguaje C: directiva #ifdef

Este tutorial de C explica cómo usar la directiva de preprocesador #ifdef en el lenguaje C.

describir

En el lenguaje de programación C, la directiva #ifdef permite la compilación condicional. El preprocesador determina la presencia de la macro proporcionada antes de incluir el código posterior en el proceso de compilación.

sintaxis

La sintaxis de la directiva #ifdef en lenguaje C es:

#ifdef macro_definition

macro_definition Una definición de macro que debe definirse para el preprocesador a fin de incluir el código fuente de C en una aplicación compilada.

notas

  • La directiva #ifdef debe estar cerrada por la directiva #endif.

ejemplo

El siguiente ejemplo muestra cómo usar la directiva #ifdef en C:

/* Example using #ifdef directive by TechOnTheNet.com */

#include <stdio.h>

#define YEARS_OLD 10

int main()
{
   #ifdef YEARS_OLD
   printf("TechOnTheNet is over %d years old.n", YEARS_OLD);
   #endif

   printf("TechOnTheNet is a great resource.n");

   return 0;
}

Aquí está la salida del programa ejecutable:

TechOnTheNet is over 10 years old.
TechOnTheNet is a great resource.

Un uso común de la directiva #ifdef es permitir que el código fuente específico de la plataforma se inserte en un programa.

A continuación se muestra un ejemplo:

/* Example using #ifdef directive for inserting platform specific source code by TechOnTheNet.com */

#include <stdio.h>

#define UNIX 1

int main()
{
   #ifdef UNIX
   printf("UNIX specific function calls go here.n");
   #endif

   printf("TechOnTheNet is over 10 years old.n");

   return 0;
}

La salida de este programa es:

UNIX specific function calls go here.
TechOnTheNet is over 10 years old.

En este ejemplo, el código fuente de UNIX está habilitado.Para deshabilitar el código fuente de UNIX, cambie la línea #define UNIX 1 llegar #undef UNIX.

(Visited 3 times, 1 visits today)