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

Directivas de preprocesador en C#: Cómo moldean tu código

Las directivas de preprocesador dan instrucciones al compilador para preprocesar la información antes de que comience la compilación real.

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

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

Directivas de preprocesador en C#

Nº Directiva y descripción
1#define: Define una secuencia de caracteres, llamada símbolo.
2#undef: Permite indefinir un símbolo.
3#if: Permite probar un símbolo para ver si evalúa a true.
4#else: Crea 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#line: Modifica el número de línea del compilador y (opcionalmente) el nombre de archivo para errores y advertencias.
8#error: Genera un error desde una ubicación específica en el código.
9#warning: Genera una advertencia de nivel uno desde una ubicación específica.
10#region: Especifica un bloque de código que se puede expandir/colapsar en Visual Studio.
11#endregion: Marca el final de un bloque #region.

La directiva #define

Crea constantes simbólicas. Permite definir un símbolo tal que, al usarlo como expresión en #if, la expresión evalúa a true.

Sintaxis:

#define símbolo

Ejemplo:


#define PI
using System;
namespace PreprocesadorApp {
    class Program {
        static void Main(string[] args) {
            #if (PI)
                Console.WriteLine("PI está definido");
            #else
                Console.WriteLine("PI no está definido");
            #endif
            Console.ReadKey();
        }
    }
}

Resultado:

PI está definido

Directivas condicionales

Use #if para crear una directiva condicional. Útiles para probar símbolos y compilar código para builds de depuración o configuraciones específicas.

Sintaxis:

#if símbolo [operador símbolo]...

Operadores: == (igualdad), != (desigualdad), && (y), || (o). Puede agrupar con paréntesis. Una directiva que comienza con #if debe terminar explícitamente con #endif.

Ejemplo:


#define DEBUG
#define VC_V10
using System;

public class ClasePrueba {
    public static void Main() {
        #if (DEBUG && !VC_V10)
            Console.WriteLine("DEBUG está definido");
        #elif (!DEBUG && VC_V10)
            Console.WriteLine("VC_V10 está definido");
        #elif (DEBUG && VC_V10)
            Console.WriteLine("DEBUG y VC_V10 están definidos");
        #else
            Console.WriteLine("DEBUG y VC_V10 no están definidos");
        #endif
        Console.ReadKey();
    }
}

Resultado:

DEBUG y VC_V10 están definidos

Lenguaje C

  1. C# Hola Mundo – Construyendo su primera aplicación en C#
  2. Entendiendo palabras clave e identificadores en C#: Reglas, listas y mejores prácticas
  3. Domine variables y tipos de datos primitivos en C#: Guía completa
  4. Operadores en C# – Guía completa de operadores en C#
  5. Dominando operadores bit a bit y de desplazamiento en C#: Guía completa
  6. Fundamentos de C#: Entrada y salida esenciales
  7. Expresiones, sentencias y bloques en C#: Guía completa con ejemplos prácticos
  8. Dominando los comentarios en C#: Tipos, mejores prácticas y documentación XML
  9. Dominando la sentencia switch en C#: Sintaxis, ejemplos y mejores prácticas
  10. Operador ternario en C#: Guía concisa para expresiones condicionales
  11. Dominando las Directivas de Preprocesador en C#: Guía Práctica