প্রি-প্রসেসর হল একটি প্রোগ্রাম যা সোর্স কোড কম্পাইলারের মাধ্যমে পাস হওয়ার আগে প্রেরণ করে। এটি প্রি-প্রসেসর ডিরেক্টিভের অধীনে কাজ করে যা # চিহ্ন দিয়ে শুরু হয়।
প্রকারভেদ
প্রি-প্রসেসর কমান্ডের তিনটি প্রকার রয়েছে:
ম্যাক্রো সাবস্টিটিউশন ডিরেক্টিভ।
ফাইল ইনক্লুশন ডিরেক্টিভ।
কম্পাইলার কন্ট্রোল ডিরেক্টিভ।
ম্যাক্রো সাবস্টিটিউশন ডিরেক্টিভ
এটি একটি আইডেন্টিফায়ারের প্রতিটি घटনাকে একটি প্রি-ডিফাইনড স্ট্রিং দ্বারা প্রতিস্থাপন করে।
ম্যাক্রো সাবস্টিটিউশন ডিরেক্টিভ ডিফাইন করার সিনট্যাক্স নিম্নরূপ:
#define identifier string
উদাহরণস্বরূপ,
#define PI 3.1415 #define f(x) x*x #undef PI
উদাহরণ
ম্যাক্রো সাবস্টিটিউশন ডিরেক্টিভের জন্য C প্রোগ্রাম নিচে দেওয়া হল:
#define wait getch() main(){ clrscr(); printf("Hello"); wait; }আউটপুট
উপরের প্রোগ্রামটি এক্সিকিউট করলে নিচের ফলাফল পাওয়া যাবে:
Hello
ফাইল ইনক্লুশন ডিরেক্টিভ
ফাংশন (অথবা) ম্যাক্রো ডেফিনিশন ধারণকারী একটি এক্সটার্নাল ফাইল #include ডিরেক্টিভ ব্যবহার করে ইনক্লুড করা যায়।
ফাইল ইনক্লুশন ডিরেক্টিভের সিনট্যাক্স নিম্নরূপ:
#include(অথবা) #include "filename"
উদাহরণ
ফাইল ইনক্লুশন ডিরেক্টিভের জন্য C প্রোগ্রাম নিচে দেওয়া হল:
#includemain(){ printf("hello"); }
আউটপুট
উপরের প্রোগ্রামটি এক্সিকিউট করলে নিচের ফলাফল পাওয়া যাবে:
Hello
printf() ফাংশনের ডেফিনিশন
কম্পাইলার কন্ট্রোল ডিরেক্টিভ
C প্রি-প্রসেসর কন্ডিশনাল কম্পাইলেশন নামে একটি ফিচার অফার করে, যা একটি প্রোগ্রামে নির্দিষ্ট লাইন (অথবা) লাইন গ্রুপকে অন (ON) বা অফ (OFF) করতে ব্যবহার করা যায়।
উদাহরণ
কম্পাইলার কন্ট্রোল ডিরেক্টিভের জন্য C প্রোগ্রাম নিচে দেওয়া হল:
#if, #else, #endif ইত্যাদি. #define LINE 1 #includemain(){ #ifdef LINE printf("this is line number one"); #else printf("This is line number two"); #endif }
আউটপুট
উপরের প্রোগ্রামটি এক্সিকিউট করলে নিচের ফলাফল পাওয়া যাবে:
This line number one