Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial programming >> Lenguaje C

C# - Directivas de preprocesador

Las directivas del preprocesador le dan instrucciones al compilador para que procese previamente la información antes de que comience la compilación real.

Todas las directivas de preprocesador comienzan con # y solo pueden aparecer caracteres de espacio en blanco antes de una directiva de preprocesador en una línea. Las directivas de preprocesador no son declaraciones, por lo que no terminan con un punto y coma (;).

El compilador de C# no tiene un preprocesador separado; sin embargo, las directivas se procesan como si hubiera una. En C#, las directivas del preprocesador se utilizan para ayudar en la compilación condicional. A diferencia de las directivas de C y C++, no se utilizan para crear macros. Una directiva de preprocesador debe ser la única instrucción en una línea.

Directivas de preprocesador en C#

La siguiente tabla enumera las directivas de preprocesador disponibles en C# −

Sr.No. Directiva y descripción del preprocesador
1

#definir

Define una secuencia de caracteres, llamada símbolo.

2

#undef

Le permite anular la definición de un símbolo.

3

#si

Permite probar un símbolo o símbolos para ver si se evalúan como verdaderos.

4

#más

Permite crear una directiva condicional compuesta, junto con #if.

5

#elif

Permite crear una directiva condicional compuesta.

6

#endif

Especifica el final de una directiva condicional.

7

#línea

Le permite modificar el número de línea del compilador y (opcionalmente) la salida del nombre del archivo para errores y advertencias.

8

#error

Permite generar un error desde una ubicación específica en su código.

9

#advertencia

Permite generar una advertencia de nivel uno desde una ubicación específica en su código.

10

#región

Le permite especificar un bloque de código que puede expandir o contraer cuando usa la función de esquema del Editor de código de Visual Studio.

11

#endregion

Marca el final de un bloque de #región.

El preprocesador #define

La directiva de preprocesador #define crea constantes simbólicas.

#define le permite definir un símbolo de tal manera que, al usar el símbolo como la expresión que se pasa a la directiva #if, la expresión se evalúa como verdadera. Su sintaxis es la siguiente −

#define symbol

El siguiente programa ilustra esto −

Demostración en vivo
#define PI 
using System;

namespace PreprocessorDAppl {
   class Program {
      static void Main(string[] args) {
         #if (PI)
            Console.WriteLine("PI is defined");
         #else
            Console.WriteLine("PI is not defined");
         #endif
         Console.ReadKey();
      }
   }
}

Cuando el código anterior se compila y ejecuta, produce el siguiente resultado −

PI is defined

Directrices condicionales

Puede usar la directiva #if para crear una directiva condicional. Las directivas condicionales son útiles para probar un símbolo o símbolos para verificar si se evalúan como verdaderos. Si se evalúan como verdaderos, el compilador evalúa todo el código entre #if y la siguiente directiva.

La sintaxis de la directiva condicional es −

#if symbol [operator symbol]...

Donde, símbolo es el nombre del símbolo que desea probar. También puede usar verdadero y falso o anteponer el símbolo con el operador de negación.

El símbolo del operador es el operador utilizado para evaluar el símbolo. Los operadores pueden ser cualquiera de los siguientes −

También puede agrupar símbolos y operadores con paréntesis. Las directivas condicionales se usan para compilar código para una compilación de depuración o cuando se compila para una configuración específica. Una directiva condicional que comienza con #if la directiva debe terminar explícitamente con un #endif directiva.

El siguiente programa demuestra el uso de directivas condicionales −

Demostración en vivo
#define DEBUG
#define VC_V10
using System;

public class TestClass {
   public static void Main() {
      #if (DEBUG && !VC_V10)
         Console.WriteLine("DEBUG is defined");
      #elif (!DEBUG && VC_V10)
         Console.WriteLine("VC_V10 is defined");
      #elif (DEBUG && VC_V10)
         Console.WriteLine("DEBUG and VC_V10 are defined");
      #else
         Console.WriteLine("DEBUG and VC_V10 are not defined");
      #endif
      Console.ReadKey();
   }
}

Cuando el código anterior se compila y ejecuta, produce el siguiente resultado −

DEBUG and VC_V10 are defined

Lenguaje C

  1. C# Hello World:su primer programa en C#
  2. Identificadores y palabras clave de C#
  3. Variables de C# y tipos de datos (primitivos)
  4. Operadores de C#
  5. Operadores C# Bitwise y Bit Shift
  6. Entrada y salida básica de C#
  7. Expresiones, declaraciones y bloques de C# (con ejemplos)
  8. Comentarios de C#
  9. Declaración de cambio de C#
  10. C# ternario (? :) Operador
  11. Directivas de preprocesador de C#