C Programming Language

نظرة عامة في لغة سي 1

مقدمة في لغة C

نظرة عامة في لغة سي

لغة سي C سوف تكون محور حديثنا اليوم و هو عن واحدة من أقوى لغات البرمجة الموجودة على الساحة منذ نشأتها إلى الآن, و هي واحدة من لغات البرمجة العالية المستوي high level و هي مثل لغة باسكال من حيث سهولة الإستخدام من ناحية و من ناحية أخرى هي من اللغات المتدنية المستوى من حيث قدرتها على مخاطبة مكونات الجهاز و من اسباب شعبيه لغة الـ C هو إنتشار نظام التشغيل UNIX و هو أهم نظام تشغيل للحاسبات المتطورة حيث أن هذا النظام كتب بلغة C.

كانت أول بداية لظهور لغة سي في مختبرات شركة AT&T في عام 1972 و كانت هي البداية كمشروع تولى الإشراف عليه دينيس ريتشي ( Dennis Ritchie ) و هو يعتبر مخترع لغة سي بإستخدام نظام التشغيل Unix و لغة سي هي في الأصل لغة قديمة يطلق عليها إسم BCPL و BCPL تم تطويرها بواسطة مارتن ريتشارد ( Martin Richards ) 1967 و التي بدورها كانت لغة B و التي أخترعت بواسطة كين تومسون و لقد أدت لغة B إلى تطوير لغة سي في السبعينات حيث قام دينيس ريتشي أخذ من لغة B أحسن تعليماتها و غير في كثير من قيودها و أضاف إليها تعليمات عديدة و جعل منها لغة برمجة و سماها لغة C.

 

إستخدامات لغة سي C

للغة سي C إستخدامات عديدة و من هذه الإستخدامات هي :

  1. برمجة و تطوير أنظمة التشغيل.
  2. برمجة نظم قواعد البيانات.
  3. تطوير التطبيقات الواجهة الرسومية و الألعاب و الكثير من الإستخدامات.

 

مميزات لغة سي

  1. يتم إستخدام عدد قليل جداً من الكلمات المحجوزة.
  2. إستخدام أنواع ثابتة للبيانات مع إمكانية تحويل نوع البيانات ضمنياً Type Casting.
  3. لغة سي تدعم تنفيذ العديد من العمليات الحسابية و المنطقية و العمليات الخاصة بالتحكم في البيانات على مستوى البت bitwise Operations.
  4. إمكانية كتابة الأكواد البرمجية في أكثر من ملف و ترجمة كل ملف بشكل منفصل و إتاحة دمج الملفات المترجمة Linking.
  5. لغة السي لغة غنية بالدوال و توفّر للمبرمج عدداً كبيراً من دوال الإدخال و الإخراج و الدوال الرياضية و الحسابية.

 

عيوب لغة سي

  • تعتمد لغة سي على أسلوب المترجم ( الذي يقوم بترجمة البرنامج بأكمله دفعة واحدة ) و من ثم يقوم بعرض قائمة الأخطاء بعكس لغة بيسك التي تعتمد على أسلوب المفسّر مما يسهل على المستخدم تصحيح الأخطاء بكل سهولة.
  • يوجد في لغة سي أخطاء لا يستطيع المترجم أن يكتشفها.

الشكل العام لبرنامج في لغة سي

#include<stdio.h>
main()
{
	//اوامر البرنامج
}

كلمة Include# تعني اشمل أي تضمين المكتبة التي تسمي stdio داخل المشروع و تستعمل لدوال الإدخال و الإخراج و إمتداد هذه المكتبة .h (( يوجد ايضاً إمتداد .c)).

كلمة main تعني رئيسية و الأقواس هي اقواس الدالة أي الدالة الرئيسية main() للبرنامج و تبدأ بقوس و تنتهي بقوس {}.

 

دالة printf() للطباعة

دالة printf() هي الدالة الأساسية لطباعة الجمل النصية في لغة سي و هو إختصار للمصطلح print formatted، حيث تتيح دالة printf() التحكم في طريقة طباعة الجمل النصية أو ما يعرف بتنسيق الجمل النصيه و إمكانية طباعة قيم المتغيرات بداخل النص المراد طباعته.

مثال 1

#include<stdio.h>
main()
{
printf("hello world");
}

كلمة Include# تعني تضمين المكتبة التي تسمي stdio داخل المشروع و تستعمل لدوال الإدخال و الإخراج و إمتداد هذه المكتبة .h (( يوجد ايضاً إمتداد .c)). كلمة main تعني رئيسية و الأقواس هي اقواس الدالة أي الدالة الرئيسية main() للبرنامج و تبدأ بقوس و تنتهي بقوس {}. و دالة printf خاص بأمر الطباعة بمعنى إطبع لي النص المكتوب بين قوسين و يلزم تضمين الفاصلة المنقوطة ; بالنهاية.

عند تشغيل البرنامج و الضغط على زر Run سوف يطبع

output
hello world

مثال 2

#include<stdio.h>
main()
{
printf("hello world\n");
}

هذا المثال نفس المثال السابق لكن كتبنا له \n أي عند تنفيذ البرنامج قم بالنزول سطراً جديداً قبل الخروج من البرنامج.

مثال 3

قم بطباعة كلمة CS على الشاشة بإستخدام لغة السي ثم قم بنزول سطر للأسفل.

#include<stdio.h>
main()
{
printf("CS\n");
}

مثال 4

قم بطباعة كلمة Saja و كلمة Muhammad مستخدماً بينهم فاصل أربع فراغات بواسطة \t و نفذ النتيجة على الشاشة.

#include<stdio.h>
main()
{
printf("Saja\tMuhammad\n");
}

طلبنا من البرنامج بأن يطبع إسم Saja ثم يترك 4 فراغات بإستخدام /t ثم طباعة إسم Muhammad بعده و ثم النزول سطراً جديداً بإستخدام \n و الخروج من البرنامج.

عند تشغيل الكود ستكون النتيجة

outout
Saja    Muhammad

سجى الصادق محمد عثمان

من السودان مبرمجة مواقع ويب و تطبيقات أندرويد اتقن لغات "html, css, php, js" بالإضافة للتعامل مع اندرويد ستوديو و بناء التطبيقات, مهتمة بمجال التقنية منذ الصغر و كان لدي شقف كبير للدخول بالجامعه بقسم البرمجة و دخلته في عام 2013 و تعلمت كل شيئ ضمن الجامعة و خارجها من التعليم الذاتي و اتمنى أن أكون عند حسن ظن الجميع و إيصال الأمانة لكم, اعمل حاليا في إدارة موقع جامعة السودان.
زر الذهاب إلى الأعلى