What are C# pre-processor directives?


The preprocessor directives give instruction to the compiler to preprocess the information before actual compilation starts.

All preprocessor directives begin with #, and only white-space characters may appear before a preprocessor directive on a line. Preprocessor directives are not statements, so they do not end with a semicolon (;).

The following are some of the preprocessor directives in C#.

Sr.NoPreprocessor Directive & Description
1#define
It defines a sequence of characters, called symbol.
2#undef
It allows you to undefine a symbol.
3#if
It allows testing a symbol or symbols to see if they evaluate to true.
4#else
It allows to create a compound conditional directive, along with #if.
5#elif
It allows creating a compound conditional directive.
6#endif
Specifies the end of a conditional directive.
7#line
It lets you modify the compiler's line number and (optionally) the file name output for errors and warnings.
8#error
It allows generating an error from a specific location in your code.

Let us see an example of the #define preprocessor that defines a sequence of characters.

Example

 Live Demo

#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();
      }
   }
}

Output

PI is defined

Samual Sam
Samual Sam

Learning faster. Every day.

Updated on: 23-Jun-2020

285 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements