প্রি-প্রসেসর ডাইরেক্টিভগুলো কম্পাইল자에게 প্রকৃত কম্পাইলেশন শুরু হওয়ার আগে তথ্য প্রিপ্রসেস করার নির্দেশনা দেয়।
সকল প্রি-প্রসেসর ডাইরেক্টিভ # চিহ্ন দিয়ে শুরু হয়, এবং একই লাইনে ডাইরেক্টিভের আগে শুধু হোয়াইট-স্পেস ক্যারেক্টার থাকতে পারে। প্রি-প্রসেসর ডাইরেক্টিভগুলো স্টেটমেন্ট নয়, তাই সেমিকোলন (;) দিয়ে শেষ হয় না।
নিচে C#-র কিছু প্রি-প্রসেসর ডাইরেক্টিভ দেওয়া হলো:
| ক্রমিক নং | প্রি-প্রসেসর ডাইরেক্টিভ ও বিবরণ |
|---|---|
| 1 | #define একটি ক্যারেক্টার সিকোয়েন্স সংজ্ঞায়িত করে, যাকে সিম্বল বলা হয়। |
| 2 | #undef একটি সিম্বল অনডিফাইন করতে দেয়। |
| 3 | #if একটি সিম্বল বা একাধিক সিম্বল টেস্ট করতে দেয় যে সেগুলো true হয় কিনা। |
| 4 | #else #if এর সাথে যৌগিক শর্তাধীন ডাইরেক্টিভ তৈরি করতে দেয়। |
| 5 | #elif যৌগিক শর্তাধীন ডাইরেক্টিভ তৈরি করতে দেয়। |
| 6 | #endif শর্তাধীন ডাইরেক্টিভের শেষ নির্দেশ করে। |
| 7 | #line কম্পাইলারের লাইন নম্বর এবং (ঐচ্ছিক) ফাইল নাম আউটপুট পরিবর্তন করতে দেয়। |
| 8 | #error কোডের নির্দিষ্ট লোকেশন থেকে এরর জেনারেট করতে দেয়। |
উদাহরণ
#define PI
using System;
namespace PreprocessorDAppl {
class Program {
static void Main(string[] args) {
#if (PI)
Console.WriteLine("PI সংজ্ঞায়িত আছে");
#else
Console.WriteLine("PI সংজ্ঞায়িত নেই");
#endif
Console.ReadKey();
}
}
}
আউটপুট
PI সংজ্ঞায়িত আছে