الترجمة الشرطية
تعلّموا استخدام توجيهات المعالج التمهيدي لترجمة الشيفرة بصورة شرطية
الترجمة الشرطية درس مجاني في C Academy على CoddyKit. هذا هو الدرس 3 من أصل 3. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في C Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة C Academy 3 دروس في المجموع.
مقدمة إلى التص compilation الشرطي
التص compilation الشرطي
يسمح التص compilation الشرطي بتضمين الشيفرة أو استبعادها استنادًا إلى شروط محددة.
ستتعلّمون في هذا الدرس:
- كيفية استخدام
#ifdefو#ifndefللتص compilation الشرطي. - كيفية استخدام
#ifو#elseو#endifللتحكم في مسار التص compilation. - كيفية المساعدة التي يوفّرها التص compilation الشرطي في إنشاء شيفرة مستقلة عن المنصة.

استخدام #ifdef و#ifndef
استخدام #ifdef و#ifndef
يضمّن التوجيه #ifdef الشيفرة فقط إذا كانت وحدة ماكرو معرّفة.
مثال:
#ifdef DEBUG
printf("Debug mode enabled\n");
#endif
يعمل التوجيه #ifndef بالعكس، إذ يضمّن الشيفرة فقط إذا لم تكن وحدة الماكرو معرّفة.
مثال: استخدام #ifdef
مثال: استخدام #ifdef
يوضّح هذا البرنامج كيفية تفعيل رسائل تصحيح الأخطاء فقط عند تعريف DEBUG.
#include <stdio.h>
#define DEBUG
int main() {
#ifdef DEBUG
printf("Debugging mode enabled\n");
#endif
printf("Program running...\n");
return 0;
}استخدام #if و#else و#endif
استخدام #if و#else و#endif
يسمح التوجيه #if بالتص compilation الشرطي استنادًا إلى تعبيرات.
مثال:
#if VERSION >= 2
printf("Version 2 or higher\n");
#else
printf("Old version\n");
#endifمثال: استخدام #if و#else
مثال: استخدام #if و#else
يوضّح هذا البرنامج التص compilation المستند إلى الإصدار باستخدام #if و#else.
#include <stdio.h>
#define VERSION 2
int main() {
#if VERSION >= 2
printf("Version 2 or higher\n");
#else
printf("Old version\n");
#endif
return 0;
}استخدام #elif لشروط متعددة
استخدام #elif لشروط متعددة
يتحقق التوجيه #elif من شروط متعددة.
مثال:
#if VERSION == 1
printf("Version 1\n");
#elif VERSION == 2
printf("Version 2\n");
#else
printf("Unknown version\n");
#endifمثال: استخدام #elif
مثال: استخدام #elif
يوضّح هذا البرنامج كيفية معالجة شروط تص compilation متعددة باستخدام #elif.
#include <stdio.h>
#define VERSION 2
int main() {
#if VERSION == 1
printf("Version 1\n");
#elif VERSION == 2
printf("Version 2\n");
#else
printf("Unknown version\n");
#endif
return 0;
}مزايا التص compilation الشرطي
مزايا التص compilation الشرطي
يفيد التص compilation الشرطي في:
- إنشاء شيفرة مستقلة عن المنصة.
- تفعيل ميزات تصحيح الأخطاء دون تعديل الشيفرة.
- تص compilation إصدارات مختلفة من البرنامج.
الملخص
الملخص
تعلّمتم في هذا الدرس:
- كيفية استخدام
#ifdefو#ifndefللتحقق من تعريفات وحدات الماكرو. - كيفية استخدام
#ifو#elseو#elifللتص compilation الشرطي. - مزايا التص compilation الشرطي في إنشاء برامج مرنة.
بهذا نختتم قسم توجيهات المعالج القبلي ووحدات الماكرو في C!

الأسئلة الشائعة
هل درس «الترجمة الشرطية» مجاني؟
نعم — نص درس «الترجمة الشرطية» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة C Academy، انتقل إلى CoddyKit PRO. تتضمن دورة C Academy 3 دروس في المجموع.
ماذا ستتعلم في «الترجمة الشرطية»؟
تعلّموا استخدام توجيهات المعالج التمهيدي لترجمة الشيفرة بصورة شرطية تتمرن على C Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ C Academy؟
لا تُشترط خبرة سابقة. C Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 3 من أصل 3.
كم من الوقت يستغرق درس «الترجمة الشرطية»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس C Academy هذا؟
نعم. كل درس في C Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- فهم المعالج التمهيدي للغة C
- وحدات الماكرو والدوال المضمنة
- الترجمة الشرطية