سي (لغة برمجة)

لغة برمجة عامة الغرض

سي أو سِ (/s/، وباللاتينية C)، وهي لغة برمجة حاسوب متعددة الأغراض أمرية تدعم البرمجة المهيكلة والنطاق المعجمي المتغير والاستدعاء الذاتي، بينما يمنع نظام النوع الساكن العديد من العمليات غير المرغوبة. ومن خلال تصميم لغة السي فقد وفرت تركيبات تعيين دقيقة لتعليمات الآلة النموذجية، وبالتالي فقد صممت للاستخدام الدائم في التطبيقات المبرمجة مسبقا بلغة التجميع، كأنظمة التشغيل، وكذلك العديد من البرامج التطبيقية لأجهزة الحاسوب من الحواسيب العملاقة وحتى الأنظمة المدمجة.

صممها وطوّرها في أوائل عقد السبعينيات كن تومسون، وبريان كيرنيغان، ودينيس ريتشي.[5][6][7] وقد صممت في الأصل لتستعمل في التطوير والعمل على نظام التشغيل يونكس، ثم لقيت انتشاراً واسعاً منذ ذلك الحين وحتى اليوم ويظهر ذلك من خلال شعبيتها لدى أغلب مبرمجي الحاسوب ومن خلال استعمالاتها العديدة والمتنوعة. وتعدّ لغة السي اللغة الأم للعديد من لغات البرمجة الحديثة مثل السي بلس بلس والتي تعدّ توسيعًا وإضافة مكملة للسي.

تاريخ

عدل

صممت لغة السي في مختبرات بيل ما بين عامي 1972 و 1973، وسميت بالسي لأن جزءاً كبيراً منها اقتبس من لغة بي، وقد تطورت هذه اللغة إلى درجة أصبحت فيها بالقوة الكافية لتحويل نواة يونكس من لغة التجميع (الأسمبلي) إلى السي.

وفي عام 1978 نشر بريان كيرنيغان ودينيس ريتشي الكتاب المشهور «لغة البرمجة سي» وذلك لتحديد خصائص اللغة، ويعرف هذا الكتاب في الأوساط المختصة ب K&R. إلا أن تقنين اللغة وتبنيها بصفة رسمية من طرف المعهد القومي الأمريكي للقياس والمنظمة الدولية للمعايير حصل في عقد الثمانينات وكنتيجة لذلك ظهرت الطبعة الثانية للكتاب بعنوان The C Programming Language, Second Edition، أو K&R2 وهو المرجع الرئيسي للغة إلى الآن ISBN 0-13-110362-8. و بتقنين اللغة تمت إضافة أجزاء وتنقيح أجزاء أخرى لتفادي السلبيات التي ظهرت في السابق ولتهيئة أداة أفضل وأقوى بالنسبة للمبرمج.

و لولا ظهور لغة السي وتجربتها التي فاقت الثلاثين عاماً لما كان من الممكن ظهور اللغات الحديثة والشيئية مثل السي++ أو على الأقل لما أصبحت كما تعرف عليهِ اليوم. ساهم في تطوير اللغة كل من شركة مايكروسوفت وشركة آي‌ بي‌ إم معاً ولذلك فإن الأساسيات العامة لأسلوب كتابتها تستخدم إلى الاَن وفي العديد من اللغات المتطورة والمنشأة من خلالها حتى اَخر لغات السي وهي لغة السي شارب والتي تعدّ أحدث تطور للغة السي ويوجد إصدارات عديدة منها بدءاً من سنة 2001 حتى إصدار سنة 2010.

إستخدامات

عدل

للغة سي إستخدامات عديدة، وتستخدم في:

أمثلة

عدل

برنامج أهلا بالعالم التقليدي:

 #include <stdio.h>
 
int main() {
    printf("Hello, world!\n");
    return 0;
 }

و في هذا المثال سيتم طباعة كلمة hello world! على الشاشة

العمليات الحسابية:

#include <stdio.h>

int main() {

	int num1,num2;

	printf("enter two numbers \n");
	scanf("%d%d",&num1,&num2);

	printf("[+] = %d \n",num1+num2);
	printf("[-] = %d \n",num1-num2);
	if (num2 != 0) printf("[/] = %d \n",num1/num2);
	printf("[*] = %d \n",num1*num2);

}

و هذا المثال هو عبارة عن حاسبة بسيطة تقوم بالعمليات الحسابية الأساسية بين عددين

لغات البرمجة
منخفضة المستوى
لغة الآلة لغة التجميع
عالية المستوى
البرمجة الإجرائيَّة البرمجة بالكائنات
  1. بيسيك
  2. سي
  1. جافا
  2. سي++


انظر أيضا

عدل

مراجع

عدل
  1. ^ وصلة مرجع: https://www.britannica.com/technology/computer-programming-language. اسم المُؤَلِّف بالحروف: David Hemmendinger.
  2. ^ وصلة مرجع: https://www.bell-labs.com/usr/dmr/www/bintro.html.
  3. ^ وصلة مرجع: http://www.bell-labs.com/usr/dmr/www/chist.html.
  4. ^ وصلة مرجع: http://cm.bell-labs.com/cm/cs/who/dmr/chist.html.
  5. ^ McIlroy، M. D. (1987). A Research Unix reader: annotated excerpts from the Programmer's Manual, 1971–1986 (PDF) (Technical report). CSTR. Bell Labs. ص. 10. مؤرشف من الأصل (PDF) في 2019-12-24.
  6. ^ Dr. Dobb's Sourcebook. U.S.A.: Miller Freeman, Inc. نوفمبر–ديسمبر 1995.
  7. ^ ISO/IEC 9899:201x (ISO C11) Committee Draft نسخة محفوظة 22 ديسمبر 2017 على موقع واي باك مشين.