0Pricing
C Academy · درس

الترجمة الشرطية

تعلّموا استخدام توجيهات المعالج التمهيدي لترجمة الشيفرة بصورة شرطية

الترجمة الشرطية درس مجاني في C Academy على CoddyKit. هذا هو الدرس 3 من أصل 3. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في C Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة C Academy 3 دروس في المجموع.

مقدمة إلى التص compilation الشرطي

التص compilation الشرطي

يسمح التص compilation الشرطي بتضمين الشيفرة أو استبعادها استنادًا إلى شروط محددة.

ستتعلّمون في هذا الدرس:

  • كيفية استخدام #ifdef و#ifndef للتص compilation الشرطي.
  • كيفية استخدام #if و#else و#endif للتحكم في مسار التص compilation.
  • كيفية المساعدة التي يوفّرها التص compilation الشرطي في إنشاء شيفرة مستقلة عن المنصة.
الترجمة الشرطية — رسم توضيحي 1

استخدام #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!

الترجمة الشرطية — رسم توضيحي 10

الأسئلة الشائعة

هل درس «الترجمة الشرطية» مجاني؟

نعم — نص درس «الترجمة الشرطية» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 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 يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. فهم المعالج التمهيدي للغة C
  2. وحدات الماكرو والدوال المضمنة
  3. الترجمة الشرطية
← العودة إلى C Academy