Latest web development tutorials

C # Präprozessordirektiven

Weisen Sie den Compiler Präprozessor vor dem eigentlichen Start der Information Vorbehandlung kompilieren.

Alle Präprozessordirektiven beginnen mit #. Und auf einer Linie, nur leere Zeichen vor einer Präprozessordirektive erscheinen. Präprozessordirektive ist keine Aussage, sie sind also nicht ein Semikolon (;) Ende.

C # Compiler nicht über einen separaten Pre-Prozessor jedoch gerne einen separaten Preprozessor zu haben als Anweisung verarbeitet wird. In C #, die Präprozessordirektiven für die bedingte Kompilierung Arbeit. C und C ++ nicht über verschiedene Befehle, sie werden nicht verwendet, ein Makro zu erstellen. Eine Präprozessordirektive muss die einzige Anweisung in der Zeile sein.

C # Präprozessordirektiven Liste

Die folgende Tabelle enthält die C # Präprozessordirektiven stehen zur Verfügung:

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

# define Präprozessor

#define Präprozessordirektive schafft symbolischen Konstanten.

#define ermöglicht es Ihnen, ein Symbol zu definieren, so dass durch die Verwendung des Symbols auf die # if-Direktive Ausdruck übergeben wird, wie der Ausdruck wahr zurückgibt. Die Syntax ist wie folgt:

#define Symbol

Das folgende Programm veranschaulicht diesen Punkt:

#define PI 
using System;
Namespace PreprocessorDAppl
{
   Klasse-Programm
   {
      static void Main (string [] args)
      {
         #if (PI)
            Console.WriteLine ( "PI definiert");
         #else
            Console.WriteLine ( "PI ist nicht definiert");
         #endif
         Console.ReadKey ();
      }
   }
}

Wenn der obige Code kompiliert und ausgeführt wird, erzeugt es die folgenden Ergebnisse:

PI ist definiert

Bedingte Anweisungen

Sie können die # if-Direktive verwenden, um eine bedingte Anweisung zu erstellen. Bedingte Anweisungen zum Prüfen, ob das Symbol wahr ist. Wenn dies zutrifft, wird der Compiler den Code zwischen #if und den nächsten Befehl auszuführen.

Bedingte Anweisung Syntax:

#if Symbol [Operatorsymbol] ...

WobeiSymbol ist der symbolischen Namen getestet werden. Sie können auch wahr und falsch verwenden oder ein Symbol wird vor dem Negationsoperator platziert.

Operator Symbolewerden verwendet , um das Operatorsymbol zu bewerten. Der Bediener kann eine der folgenden Operatoren sein:

  • == (Gleichheit)
  • ! = (Inequality)
  • && (And)
  • || (Oder)

Sie können auch Klammern Gruppe Symbole und Operatoren. Bedingte Anweisung in der Debug-Version oder kompilieren die angegebene Konfiguration kompilierten Code. Eine bedingte Anweisung mitder # if - Direktive beginnen, müssen in einem #endifAnweisung angezeigt wird beendet.

Das folgende Programm zeigt die Verwendung von bedingten Anweisungen:

#define DEBUG
#define VC_V10
using System;
public class Testclass
{
   public static void Main ()
   {

      # if (DEBUG &&! VC_V10)
         Console.WriteLine ( "DEBUG definiert ist");
      #elif (! DEBUG && VC_V10)
         Console.WriteLine ( "VC_V10 definiert");
      #elif (DEBUG && VC_V10)
         Console.WriteLine ( "DEBUG und VC_V10 definiert sind");
      #else
         Console.WriteLine ( "DEBUG und VC_V10 sind nicht definiert");
      #endif
      Console.ReadKey ();
   }
}

Wenn der obige Code kompiliert und ausgeführt wird, erzeugt es die folgenden Ergebnisse:

DEBUG und VC_V10 definiert