1.4 البرنامج C++ الأول الكلاسيكي - تفسير دقيق بناء ركيزه البرمجه - نسخة قابلة للطباعة +- الفريق العربي للهندسة العكسية (https://www.at4re.net/f) +-- قسم : منتديات البرمجة - Programming Forums (https://www.at4re.net/f/forum-5.html) +--- قسم : البرمجة بلغة السى و السى بلس بلس ++C & C (https://www.at4re.net/f/forum-17.html) +--- الموضوع : 1.4 البرنامج C++ الأول الكلاسيكي - تفسير دقيق بناء ركيزه البرمجه (/thread-3865.html) |
1.4 البرنامج C++ الأول الكلاسيكي - تفسير دقيق بناء ركيزه البرمجه - R333T - 27-04-2024 رحلة في عالم البرمجة: إتقان أساسيات البرمجة وتطبيقاتها باستخدام لغة C++ Plain textتحديد الكل # الفصل 0 : تمهيد
اهلا بكم. اليوم سنتعرف على برنامج سي بسيط بالتدقيق وبكل جوانبه وبكل سطر ستتعلم اساسيات اللغه على افضل وجه. فعليك ان تفتح اذنك وتفتح قلبك وتركز ثم تركز ثم تركز . اذا ركزت الان فلن تحتاج مره اخرى الى فهم هذه المفاهيم. وعلي ان انصح بالتركيز العميق لان اذا لم تركز فلن تستطيع بناء الطوابق الاخرى في لغه السي فرجاء التركيز ثم التركيز 1000 مره. هذا مثال على البرنامج الأول الكلاسيكي. يقوم البرنامج بكتابه "AT4RE" على الشاشة. C++
فكر بهذا النص كمجموعة من التعليمات التي نعطيها للكمبيوتر لتنفيذها، تمامًا كما نقدم وصفة للطباخ، أو كقائمة من تعليمات التي نتبعها لتشغيل برنامج جديد. دعونا نناقش ما يفعله كل سطر من هذا البرنامج، بدءًا بالسطر. C++
هذا هو السطر الذي الذي يقوم بكتابه النص على ال terminal. يقوم بكتابه الأحرف "AT4RE" متبوعًا بسطر جديد (new line). أي أنه بعد كتابة "AT4RE"، سيتم وضع المؤشر (cursor) في بداية السطر التالي. المؤشر هو رمز أو خط وميض صغير يظهر مكان كتابة الحرف التالي. في C++، يتم تحديد السلاسل النصية (string literals) بين علامات اقتباس مزدوجة ("); وهذا يعني أن "AT4RE" عبارة عن سلسلة من الأحرف. يشير std::endl إلى حرف خاص هو سطر جديد.يشير الاسم cout إلى الإخراج standard أي (standard output stream). تظهر الأحرف التي يتم "وضعها في cout" باستخدام عامل الإخراج << على الشاشة.يُنطق اسم cout "سي آوت" وهو اختصار لـ "character output stream". أو ‘‘character output’’ أو ‘‘char out’’ أو ‘‘cout’’ ستجد الاختصارات شائعة إلى حد ما في البرمجة. بطبيعة الحال، يمكن أن يكون الاختصار مزعجًا بعض الشيء في أول مرة تراه وتحتاج إلى تذكره، ولكن بمجرد أن تبدأ في استخدام الاختصارات بشكل متكرر، تصبح طبيعة، وهي ضرورية للحفاظ على اختصار نص البرنامج وإدارته. يقول std:: في std::cout أن cout يجب أن توجد في المكتبة standard التي جعلناها متاحة باستخدام #include <iostream> نهاية هذا السطر.
هو تعليق (comment). يتم تجاهل أي شيء مكتوب بعد الرمز // (هذه هي العلامة //، تسمى "slash"، مرتين) على السطر. التعليقات يتم تجاهلها بواسطة (compiler) ويتم كتابتها لصالح المبرمجين الذين يقرأون الكود. هنا، استخدمنا التعليق لإخبارك بما يفعله بداية ذلك السطر بالفعل. يتم كتابة التعليقات لوصف ما يقصده البرنامج وبوجه عام لتوفير معلومات مفيدة للبشر لا يمكن التعبير عنها مباشرة في الكود. الشخص الأكثر استفادة من التعليقات في الكود الخاص بك هو أنت - عندما تعود إلى هذا الكود في الأسبوع المقبل، أو العام المقبل، وتنسى بالضبط سبب كتابة الكود بالطريقة التي كتبتها بها. لذلك، قم بتوثيق برامجك بشكل جيد. يتم كتابة البرنامج لجمهورين. بطبيعة الحال، نكتب التعليمات البرمجية لتنفيذها بواسطة الكمبيوتر. ومع ذلك، نقضي ساعات طويلة في قراءة وتعديل الكود. وبالتالي، يعد المبرمجون جمهورًا آخر للبرامج. لذلك، فإن كتابة التعليمات البرمجية هي أيضًا شكل من أشكال الاتصال بين الإنسان والإنسان. في الواقع، من المنطقي اعتبار القراء البشر لكودنا هم جمهورنا الأساسي: إذا لم يجدوا (نحن) الكود سهل الفهم إلى حد ما، فمن غير المرجح أن يصبح الكود صحيحًا على الإطلاق. لذا، من فضلك لا تنسى: الكود للقراءة - افعل كل ما تستطيع لجعله قابل للقراءة. السطر الأول من البرنامج هو تعليق نموذجي ؛ يخبر القارئ البشري ببساطة بما يفترض أن يفعله البرنامج: C++
مثل هذه التعليقات مفيدة لأن الكود نفسه يقول ما يفعله البرنامج ، وليس ما قصدنا القيام به. أيضًا ، يمكننا عادةً شرح (بشكل تقريبي) ما يجب أن يفعله البرنامج لإنسان بشكل أكثر إيجازًا مما يمكننا التعبير عنه (بالتفصيل) في الكود بجهاز كمبيوتر. غالبًا ما يكون هذا التعليق هو الجزء الأول من البرنامج الذي نكتبه. وإلا فإنه يذكرنا بما نحاول القيام به. السطر التالي include iostream هو عبارة عن بيان استيراد وحدة (module import statement). يأمر الكمبيوتر بتضمين محتويات ملف header يسمى iostream. هذا ملف standard header يوفر إمكانية الوصول إلى تعاريف ودلالات متعلقة بعمليات الإدخال input والإخراج output، مما يسمح للبرنامج بأداء هذه المهام الأساسية.سنشرح محتوياته أثناء تقدمنا. بالنسبة لهذا البرنامج ، تكمن أهمية std في أننا نجعل مرافق إدخال / إخراج stream I/O ل C ++ standard متاحة. هنا ، نستخدم فقط standard output stream ، cout ، ومشغل الإخراج output operator الخاص به << كيف يعرف الكمبيوتر من أين يبدأ في تنفيذ برنامج؟ إنه يبحث عن function تسمى main ويبدأ في تنفيذ التعليمات التي يجدها هناك. هنا function main لبرنامج "AT4RE" الخاص بنا:
يجب أن يحتوي كل برنامج C ++ على function تسمى main لإخباره من أين يبدأ التنفيذ. الfunction هي في الأساس تسلسل مسمى من التعليمات للكمبيوتر لتنفيذها بالترتيب كما كتبناها اول باول. تتكون الfunction من أربعة أجزاء: • نوع الإرجاع (return type) ، هنا int (بمعنى "عدد صحيح") ، والذي يحدد نوع النتيجة ، إن وجدت ، ستعيده الfunction إلى أي سطر قام بطلبها لتنفيذها. كلمة int هي كلمة محجوزة في C ++ (كلمة أساسية keyword) ، لذلك لا يمكن استخدام int كاسم لأي شيء آخر. • اسم ( name of function ) ، اسم الfunction هنا main. • قائمة معلمات (parameter list) محاطة بين قوسين، هنا () ؛ في هذه الحالة برنامجنا اليوم ، تكون قائمة الparameters فارغة. • جسم الدالة function body المضمن بين مجموعة من "الأقواس المجعدة" (curly braces) ، { } ، والتي تسرد الإجراءات (المسمى ب statements) التي يجب أن تقوم بها الfunction. ويترتب على ذلك أن برنامج C ++ الأدنى هو ببساطة:
هذا ليس مفيدًا جدًا ، لأنه لا يفعل شيئًا. يحتوي main() (‘‘الدالة الرئيسية’’) او "main function" لبرنامج "AT4RE" على على اثنين statements في الbody
سيقوم أولاً بكتابة , AT4RE على الشاشة ، ثم سيعيد قيمة صفر إلى اي سطر قام باستدعائها. نظرًا لأن main يتم استدعاؤها بواسطة "النظام" the system ، فلن نستخدم قيمة الإرجاع تلك. ومع ذلك ، في بعض الأنظمة (وخاصة Unix / Linux) يمكن استخدامها للتحقق مما إذا كان البرنامج قد نجح. يشير الصفر الذي تم إرجاعه بواسطة function main إلى أن البرنامج قد انتهى بنجاح. يسمى return 0; جزء من برنامج C ++ يحدد إجراءً ما بstatement. |