freeCodeCamp/guide/arabic/cplusplus/compilers/index.md

7.3 KiB

title localeTitle
C++ Compilers C ++ Compilers

مقدمة إلى C ++ Compilers

من أجل البدء مع C ++ ، سوف تحتاج إلى معرفة القليل عن المجمعين وكيف يعمل C ++ على جهاز الكمبيوتر الخاص بك.

عندما يتم قول وفعل كل شيء ، لا تفهم أجهزة الكمبيوتر إلا لغة واحدة ، لغة الآلة. لغة الآلة تتكون بالكامل من بت ثنائية ، أو صفر و 1 ثانية. في حين أنه سيكون من الممكن برمجة في ثنائي ، سيكون من الممل بشكل لا يصدق وتستغرق وقتا طويلا. لذلك ، نحن البشر تطوير لغات البرمجة لتسهيل تطوير البرمجيات. لغة التجميع هي مباشرة 1 إلى 1 مع الجهاز لغة. تكون اللغات مثل C و C ++ و COBOL أعلى قليلاً وتحتاج إلى تجميعها. يذهب أعلى من ذلك. اللغات مثل JavaScript و Python يحتويان على مكونات يتم ترجمتها إلى لغة C ++ أو لغات أخرى منخفضة المستوى قبل تجميعها ، على نحو فعال جعلهم "أعلى" من اللغات C أو C ++. نظرًا لأن بنية الكمبيوتر تتكون من مفاتيح كهربائية وكابلات إلكترونية لا يمكنها العمل إلا مع الثنائيات والآليات الثنائية ، تحتاج إلى مترجم لترجمة التعليمات البرمجية الخاصة بك من C ++ عالية المستوى إلى لغة الجهاز التي يمكن أن تفهم وحدة المعالجة المركزية.

المجمعات هي برامج مساعدة تأخذ الكود الخاص بك وتحويله إلى ملفات التعليمات البرمجية القابلة للتنفيذ. عند تشغيل مترجم على التعليمات البرمجية الخاصة بك ، أولاً ، يقرأ preprocessor التعليمات البرمجية المصدر (ملف C ++ الذي كتبته للتو). يبحث المعالج مسبقا عن أي توجيهات preprocessor (خطوط التعليمات البرمجية تبدأ بـ #). تعليمات preprocessor تسبب preprocessor لتغيير التعليمات البرمجية الخاصة بك بطريقة ما (عادة بإضافة بعض المكتبة أو ملف C ++ آخر). بعد ذلك ، يعمل المحول البرمجي عبر سطر التعليمات البرمجية المُختبَر مسبقًا عن طريق سطر الترجمة كل سطر في تعليمات لغة الآلة المناسبة. سيكشف هذا أيضًا عن أي أخطاء في بناء الجملة موجودة في التعليمات البرمجية المصدر وسوف يلقي خطأ في سطر الأوامر. وأخيرًا ، في حالة عدم وجود أخطاء ، يقوم المترجم بإنشاء كائن الملف مع ثنائي اللغة آلة اللازمة لتشغيل على جهازك. بينما ملف الكائن الذي أنشأه المترجم من المحتمل أن تقوم بعمل ما على جهاز الكمبيوتر الخاص بك ، فإنه لا يزال غير قابل للتنفيذ من برنامج C ++ الخاص بك. هناك نهائي خطوة مهمة للوصول إلى برنامج قابل للتنفيذ.

يحتوي C ++ على مكتبة كبيرة للمساعدة في أداء المهام الصعبة مثل I / O والتلاعب بالأجهزة. يمكنك تضمين هذه المكتبات مع توجيهات ما قبل المعالجة ، لكن المعالج الأولي لا يضيفها تلقائيًا إلى شفرتك. من أجل أن يكون لديك برنامج نهائي قابل للتنفيذ ، يجب على الأداة المساعدة الأخرى المعروفة باسم رابط دمج ملفات الكائن مع وظائف المكتبة اللازمة لتشغيل التعليمات البرمجية. فكر في الأمر على أنه يحتوي على كل الكتل اللازمة لبناء منزل. قام المترجم بكتابة جميع الكتل ، لكن الرابط هو الذي يربطها معا لخلق منزل في النهاية. بمجرد الانتهاء من ذلك ، لديك الآن ملف تنفيذي فعال!

كيفية ترجمة ملف

لنفترض أن لديك ملف C ++ يسمى helloWorld.cpp ...

إذا كنت تستخدم نظام Windows -

باستخدام و IDE مثل CodeBlocks

إنه بسيط مثل النقر فوق أزرار الإنشاء والتشغيل ، سيقومون بإنشاء ملف في مجلد المشروع. IMG

باستخدام موجه الأوامر

  1. افتح موجه أوامر المطور - للحصول على هذه الخطوة ، يجب أن يكون لديك Microsoft Visual Studio أو بعض IDE أخرى تمكنك من ترجمة البرنامج الخاص بك من سطر الأوامر. يمكنك أيضًا البحث عبر الإنترنت عن compilers C ++.

  2. انتقل إلى شفرة المصدر مباشرة

  3. تشغيل المحول البرمجي على التعليمات البرمجية المصدر (بافتراض أنك تستخدم برنامج التحويل البرمجي Microsoft Visual Studio) cl /EHsc helloWorld.cpp

سيؤدي ذلك الآن إلى إنشاء ملف كائن وربطه تلقائيًا نيابة عنك. إذا نظرت في هذا المجلد نفسه ، سترى أ الملف القابل للتنفيذ hellWorld.exe (لاحظ ملحق EXE) موجود الآن.

  1. اكتب helloWorld إلى المطالبة بتشغيل الملف القابل للتنفيذ

بدلاً من ذلك ، تسمح العديد من IDEs ببناء البرنامج وعرضه بسرعة. قد يكون هذا أسهل منذ إصدار قد لا تأتي النوافذ قبل تعبئتها باستخدام أداة التحويل البرمجي.

إذا كنت تستخدم Linux أو OSX -

  1. افتح نافذة طرفية وانتقل إلى دليل التعليمات البرمجية المصدر
  2. قم بتشغيل المحول البرمجي على شفرتك المصدرية g++ helloWorld.cpp -o helloWorld

سيؤدي ذلك إلى إنشاء ملف كائن وربطه تلقائيًا نيابة عنك. ابحث في المجلد وسترى helloWorld.exe ملف قابل للتنفيذ (لاحظ ملحق إكس).

  1. اكتب ./helloWorld في نافذة طرفية لتشغيل الملف القابل للتنفيذ

g + هو مترجم لينكس القياسي وهو أداة رائعة. انها تأتي معبأة مع نظام التشغيل.

ملحوظة: لترجمة وتنفيذ التعليمات البرمجية الخاصة بك مباشرة ، قم بتشغيل g++ -o helloWorld helloWorld.cpp; ./helloWorld لذلك عندما تحتاج إلى ترجمة وتشغيل التعليمات البرمجية الخاصة بك عدة مرات ، يصل السهم-أدخل


هناك عدد من أنواع مختلفة من المجمعين. وهما المدرجة هي التي يتم حزمها عادة مع ويندوز أو Linux / OSX.