Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

هيكل البرنامج الأساسي

جزء من قسم الأساسيات في رحلة C++ على Coddy. الدرس 4 من 74.

في C++، تتم كتابة معظم التعليمات البرمجية القابلة للتنفيذ داخل الدوال. تُعد الدالة main نقطة إدخال program بلغة C++؛ وعند تشغيل program بلغة C++، تكون التعليمات البرمجية الموجودة داخل main هي أول ما يُنفَّذ. يمكن أن يظهر بعض التعليمات البرمجية، مثل التصريحات العامة وpreprocessor directive، خارج الدوال، كما يمكنك أيضًا إنشاء دوال مخصصة خاصة بك (سنغطي ذلك في درس لاحق).

إليك شرحًا مبسطًا لبرنامج C++ أساسي:

#include <iostream> // توجيه المعالج المسبق للإدخال/الإخراج

int main() { // الدالة الرئيسية
    std::cout << "This is my first C++ program!"; // تعليمة الإخراج
    return 0; // تعليمة الإرجاع (ممارسة جيدة)
}

في C++، تُستخدم #include كـ directive للـ Preprocessor من أجل تضمين ملفات header، التي تحتوي على تصريحات لـ function والكائنات التي يمكن أن يستخدمها program الخاص بك. في هذه الحالة، تعمل #include <iostream> على تضمين header ‏iostream، الذي يوفر كائنات مثل std::cout من أجل إخراج text إلى وحدة التحكم.

لنُفكّك الأجزاء الرئيسية من program أعلاه:

  • Preprocessor directive (#include <iostream>): يُنفَّذ هذا السطر قبل التجميع، ويخبر المُصرّف بتضمين ملف ترويسة iostream، مما يمنح program إمكانية الوصول إلى أدوات الإدخال/الإخراج.
  • function (int main() { ... }): الـfunction هي كتلة مُسمّاة من التعليمات البرمجية تُنجز مهمةً ما. يشير int الموجود قبل main إلى أن الـfunction تُعيد قيمة صحيحة. تحدد الأقواس المعقوفة {} نطاق الـfunction. كل ما بداخلها ينتمي إلى main. يعني تحديد النطاق أن التعليمات البرمجية الموجودة داخل كتلة تكون محتواة فيها وتعمل كجزء من تلك الكتلة.
  • بادئة مساحة الأسماء (std::): تخبر البادئة std:: المصرّف بالبحث عن cout داخل مساحة أسماء المكتبة القياسية. مساحة الأسماء هي طريقة لتجميع الأسماء المرتبطة وتجنّب التعارضات. سنتناول مساحات الأسماء بمزيد من التفصيل في درس لاحق.
  • عبارة الإخراج (std::cout): تطبع هذه العبارة نصًا على وحدة التحكم.
  • عبارة الإرجاع (return 0;): تشير هذه العبارة إلى أن program اكتمل بنجاح. مع أن C++ لا تتطلب عبارة إرجاع بشكل صارم في main، فإن تضمينها يُعد good practice.

ملاحظة مهمة: في C++، يجب أن تنتهي كل statement بفاصلة منقوطة (;). الفاصلة المنقوطة إلزامية، وهي تُخبر C++ بأنك وصلت إلى نهاية statement. سيؤدي نسيان إضافة فاصلة منقوطة إلى حدوث خطأ في التجميع. ومع ذلك، لاحظ أن كتل التعليمات البرمجية المحاطة بأقواس معقوفة {} (مثل تصريحات function) لا تحتاج إلى فواصل منقوطة.

جرّب بنفسك

لا يتضمّن هذا الدرس تحدّيًا برمجيًا.

quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس الأساسيات

تدرّب بنفسك: مترجم C++ عبر الإنترنت