Latest web development tutorials

C # directivas del preprocesador

Instruir al preprocesador del compilador antes del inicio efectivo de compilar el tratamiento previo de la información.

Todas las directivas del preprocesador comienzan con #. Y en una línea, sólo los caracteres en blanco pueden aparecer antes de una directiva de preprocesador. directiva de preprocesador no es una declaración, por lo que no son un punto y coma; end ().

Compilador de C # no tiene un pre-procesador separado, sin embargo, les gusta tener un preprocesador como instrucción separada se procesa. En C #, las directivas del preprocesador para el trabajo de compilación condicional. C y C ++ no tienen instrucciones diferentes, que no se utilizan para crear una macro. Una directiva de preprocesador debe ser la única instrucción en esa línea.

C # lista de directivas del preprocesador

En la siguiente tabla se muestran las directivas del preprocesador de C # están disponibles:

预处理器指令描述
#define它用于定义一系列成为符号的字符。
#undef它用于取消定义符号。
#if它用于测试符号是否为真。
#else它用于创建复合条件指令,与 #if 一起使用。
#elif它用于创建复合条件指令。
#endif指定一个条件指令的结束。
#line它可以让您修改编译器的行数以及(可选地)输出错误和警告的文件名。
#error它允许从代码的指定位置生成一个错误。
#warning它允许从代码的指定位置生成一级警告。
#region它可以让您在使用 Visual Studio Code Editor 的大纲特性时,指定一个可展开或折叠的代码块。
#endregion它标识着 #region 块的结束。

preprocesador #define

directiva de preprocesador #define crea constantes simbólicas.

#define le permite definir un símbolo, de manera que, a través del uso del símbolo se pasa a la expresión directiva #if como la expresión devuelve verdadero. Su sintaxis es la siguiente:

símbolo # define

El programa siguiente ilustra este punto:

#define PI 
using System;
PreprocessorDAppl de espacio de nombres
{
   Programa de clases
   {
      static void main (String [] args)
      {
         #if (PI)
            Console.WriteLine ( "PI se define");
         #else
            Console.WriteLine ( "PI no está definido");
         #endif
         Console.ReadKey ();
      }
   }
}

Cuando el código se compila y ejecuta, produce los siguientes resultados:

PI se define

instrucciones condicionales

Puede usar la directiva #if para crear una instrucción condicional. instrucciones condicionales para comprobar que es el símbolo es cierto. Si es verdad, el compilador se ejecutará el código entre #if y la siguiente instrucción.

sintaxis de la instrucción condicional:

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

En el que,el símbolo es el nombre simbólico a ensayar. También puede utilizar verdadero y falso, o símbolo se coloca en frente del operador de negación.

símbolos del operadorse usan para evaluar el símbolo del operador. Los operadores pueden ser uno de los siguientes operadores:

  • == (Igualdad)
  • ! = (Desigualdad)
  • && (Y)
  • || (O)

También puede utilizar paréntesis para agrupar símbolos y operadores. la instrucción condicional en la versión de depuración o compilar el código compilado de configuración especificado. Una instrucción condicionala partir de ladirectiva#if,debe ser representada en una instrucción#endifse termina.

El programa siguiente muestra el uso de instrucciones condicionales:

#define DEBUG
#define VC_V10
using System;
TestClass clase pública
{
   public static void Principal ()
   {

      # if (DEBUG &&! VC_V10)
         Console.WriteLine ( "DEBUG está definido");
      #elif (! DEBUG && VC_V10)
         Console.WriteLine ( "VC_V10 se define");
      #elif (DEBUG && VC_V10)
         Console.WriteLine ( "depurar y VC_V10 se definen");
      #else
         Console.WriteLine ( "depurar y VC_V10 no están definidos");
      #endif
      Console.ReadKey ();
   }
}

Cuando el código se compila y ejecuta, produce los siguientes resultados:

Depurar y VC_V10 se definen