الأخبار التكنولوجية والاستعراضات والنصائح!

C مقابل. C ++: الاختلافات والتشابهات

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

ما هو سي؟

لغة البرمجة C هي لغة برمجة منظمة عالية المستوى. البرامج المكتوبة بلغة C محمولة. لا تزال لغة C واحدة من أفضل لغات البرمجة اليوم لأنها قوية. يتم استخدامه للبرامج المعقدة مثل الأنظمة المضمنة ، وبرامج التشغيل ، والنواة ، وتطبيقات النظام ، وأنظمة التشغيل مثل Microsoft Windowsو Apple OS X وقواعد البيانات مثل MySQL وبعض تطبيقات إنترنت الأشياء.

لغة C هي لغة مترجمة توفر طبقة من التجريد بين كود الآلة والبرنامج.

سيبدو برنامج C البسيط لإضافة رقمين هكذا.

#تضمن
int main () {int a، b، sum؛ printf (“أدخل رقمين لإضافتهما:”) ؛ scanf (“٪ d٪ d” ، & أ ، & ب) ؛ مجموع = أ + ب ؛ printf (“nSum٪ d و٪ d٪ d” ، a ، b ، sum) ؛ العودة 0 ؛ }

هنا هو الإخراج:

الإخراج من المثال برنامج سي

تتضمن برامج C stdio.h – إخراج الإدخال القياسي.

يوفر STDIO وظائف الإدخال والإخراج الأساسية مثل printf و scanf. يتم استخدام printf لطباعة شيء ما (رسالة ، إخراج) على وحدة التحكم ، بينما يتم استخدام scanf لأخذ المدخلات من وحدة التحكم. نستخدم٪ d للإشارة إلى أن الأرقام أعداد صحيحة.

يمنحك إدخال الكسور العشرية بعض الإجابات الغريبة. لتجنب ذلك ، يمكنك استخدام٪ f. الدالة main () هي أول وظيفة يتم تنفيذها عند تشغيل البرنامج. التركيب اللغوي بسيط للغاية – أعلن عن أنواع المتغيرات ثم استخدمها.

ما هو C ++؟

يعتمد C ++ على مبادئ البرمجة الموجهة للكائنات مثل التجريد وتعدد الأشكال والوراثة والتغليف. يمكنك التفكير في C ++ على أنه امتداد لـ C مع مفهوم الفئات والكائنات.

أعطى وجود كائنات لتخزين البيانات بنية لطيفة للبرامج. على سبيل المثال ، إذا كنت تريد تخزين معلومات حول طالب ، فيمكنك إنشاء فصل دراسي للطلاب وإنشاء سمات مثل الاسم والعمر والهوايات والشارات وما إلى ذلك ضمن الفصل. يمكنك إنشاء كائن طالب حقيقي عند الحاجة!

فئة الطالب {عام: char name[20]؛ عمر int علامات تعويم } ؛ // سيؤدي هذا إلى إنشاء كائن Student student1 = new Student () ؛

في الواقع ، سيتم إنشاء الكائن وتخصيص الذاكرة فقط في وقت التشغيل.

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

تمت كتابة عدد قليل من قواعد البيانات مثل MongoDB بلغة ++ C. مثل C ، فإن C ++ محمولة.

لنكتب برنامج الوظيفة الإضافية السابق في C ++ – لاحظ الوظائف المختلفة.

#تضمن
استخدام اسم للمحطة؛ int main () {int a، b؛ كوت< "Enter the numbers: "; cin >> أ >> ب ؛ مجموع int = a + b ؛ cout << a << "+" << b << "=" << sum؛ العودة 0 ؛ }

لاحظ أننا نستخدم cout و cin بدلاً من printf و scanf. يمكن أيضًا إجراء تعريفات النوع في أي مكان في البرنامج قبل استخدام المتغير (على سبيل المثال ، المجموع المتغير). النسخة المطبوعة بسيطة جدًا مع أسماء المتغيرات فقط. لاحظ أننا نستخدم مساحة الاسم std من رأس iostream. يحتوي std على طرق مثل cout و in وغيرها الكثير.

أوجه التشابه بين C و C ++

يمكنك القول أن C هي مجموعة فرعية من C ++. هناك العديد من أوجه التشابه بين C و C ++ ، سواء في طريقة كتابة البرامج أو التطبيقات المستخدمة من أجلها. كلاهما قوي ومحمول وعالي الأداء. بعض أوجه التشابه المهمة هي:

Sno.FeatureExplanation1.Syntax كلاهما لهما نفس الصيغة ، مثل تعريف المتغير ، والفاصلة المنقوطة في نهاية السطر ، واصطلاحات التسمية ، وما إلى ذلك. 2 الهيكلية والإجرائية يتم تنفيذ كل سطر من التعليمات البرمجية واحدًا تلو الآخر. يتم تنظيم البرامج على النحو التالي – أولاً عمليات الاستيراد ، ثم التصريحات المتغيرة ثم الكود الرئيسي 3. الوظيفة الرئيسية () يجب أن تكون جميع الكودات التي يجب تنفيذها في دالة main (). main () هي أول استدعاء للدالة أثناء تنفيذ البرنامج. المؤشر هو متغير يخزن عنوان الذاكرة لمتغير آخر. على سبيل المثال ، int a = 1 ؛. بمجرد تنفيذ هذا الرمز ، سيتم تخصيص ذاكرة (على سبيل المثال XX0011) لـ أ. يمكن الوصول إلى موقع ذاكرة “a” باستخدام علامة العطف (&) مثل int ptr_a = & a ؛ 5. الكلمات الرئيسية وعوامل التشغيل جميع الكلمات الرئيسية و العوامل الموجودة في C صالحة أيضًا لـ C ++. على سبيل المثال ، نطاق ، ثابت ، عام ، int ، إلخ. يحتوي C ++ أيضًا على عوامل تشغيل وكلمات رئيسية إضافية. أوجه التشابه بين C و C ++

الاختلافات بين C و C ++

تم إنشاء C ++ للتغلب على بعض أوجه القصور في C وهي مجموعة شاملة من C. لذا فإن أي برنامج مكتوب بلغة C سيعمل في C ++ – ولكن ليس العكس! الفرق الرئيسي بين C و C ++ هو أن C ++ تعتمد على مبادئ البرمجة الشيئية (OOP). هناك أيضًا المزيد من التركيز على التحقق من النوع في C ++. هناك أيضًا بعض الاختلافات الدقيقة المدرجة أدناه:

تم تطوير CC ++ بين 1969-1973 بواسطة Dennis Ritchie في مختبرات AT&T Bell التي طورها Bjarne Stroustrup في عام 1979. لا تتبع مبادئ البرمجة الموجهة للكائنات استنادًا إلى مفاهيم OOPS ، مثل التغليف وتعدد الأشكال والوراثة. يحتوي C على إجمالي 32 كلمة أساسية مثل 32 حرفًا. ، و switch ، و int ، و static ، و union ، وغيرها. جميع الكلمات الأساسية C صالحة في C ++ ، وتوجد أيضًا 31 كلمة رئيسية إضافية. يدعم البرمجة الإجرائية فقط يدعم C ++ نماذج برمجة متعددة ، مثل OOP والبرمجة العامة والوظيفية. لا يمكننا تنفيذ وظائف في OOP في C. وظائف مثل الأصدقاء ، وتعزز الوظائف الافتراضية في C ++ جوهر OOP.C يدعم أنواع البيانات المضمنة. يدعم كلاً من أنواع البيانات المضمنة والمعرفة من قبل المستخدم من خلال مفهوم الفئات.هناك إمكانية تحميل زائد للمشغل أو الوظيفة يدعم C ++ كلاً من المشغلين والتحميل الزائد للوظيفة (تعدد الأشكال) يتم تخصيص الذاكرة من خلال وظائف malloc () و calloc () ، و deallocation with free () تخصيص الذاكرة يحدث حتى يستخدم مشغلًا جديدًا ، وإلغاء التخصيص مع حذف عامل التشغيل C لا يدعم معالجة الاستثناءات يدعم معالجة الاستثناءات يركز على الإجراء أو الطريقة أكثر من البيانات يركز أكثر على الاختلافات بين C و C ++

بعض الميزات المهمة الأخرى الموجودة فقط في C ++ هي:

  • باستخدام الكلمة الأساسية لمساحة الأسماء يمكننا إنشاء متغيرات بنفس الاسم في مساحات أسماء مختلفة.
  • يمكننا استخدام الدوال داخل الهيكل. يمكن أن تحتوي الهياكل أيضًا على مُعدِّلات وصول.
  • يدعم المتغيرات المرجعية.
  • متى تستخدم C أو C ++

    هذا نقاش شائع جدًا بين المبرمجين – لماذا يجب أن أتعلم لغة C بينما يمكنني فعل كل شيء في C ++؟

    سيمنحك Learning C أساسًا متينًا في هياكل البيانات ، والمؤشرات ، والكلمات الرئيسية ، والمكدس ، والكوام ، ومفاهيم تخصيص الذاكرة.

    بالإضافة إلى ذلك ، لا تزال لغة C تُستخدم على نطاق واسع للتطبيقات عالية الأداء ، لأن مترجم C أسرع من مترجم C ++. لذلك إذا كنت ترغب في كتابة أجزاء من التعليمات البرمجية لا تتطلب كائنات وفئات أو وظائف أو قوالب افتراضية ، فاختر C لأن C ++ يمكن أن تكون مبالغة في مكتباتها الواسعة.

    لا يزال يتم الاحتفاظ بمعظم الترميز منخفض المستوى مثل النواة وأنظمة التشغيل وقواعد البيانات في C ، لذا فإن معرفة C سيساعدك أيضًا على تعلم C ++ بشكل أسرع.

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

    ملخص

    في هذه المقالة تعلمنا أساسيات C و C ++ من خلال مثال بسيط لبرنامج. ناقشنا الاختلافات والتشابهات الرئيسية بين اللغتين ومتى يجب استخدام كل منهما.

    إذا كنت قد بدأت للتو رحلة تطوير البرامج الخاصة بك ، فسوف يمنحك البدء بـ C تعزيزًا للثقة ، حيث أنه بسيط ويغطي جميع مفاهيم البرمجة ، مثل هياكل البيانات والمؤشرات والذاكرة وما إلى ذلك.

    قد تكون مهتمًا باستخدام adminvista.com عبر الإنترنت مترجم C ومترجم C ++.