زبان C بسیار مختصر ست. فقط 33 کلیدواژه در آن وجود دارد. تصور کنید برای مثال زبان فرانسوی هم به همین راحتی بود. جدول زیر کلیدواژه هایی که زبان C را می سازند را نشان می دهد.
asm | enum | signed |
auto | extern | sizeof |
break | float | static |
case | for | struct |
char | goto | switch |
const | if | typedef |
continue | int | union |
default | long | unsigned |
do | register | void |
double | return | volatile |
else | short | while |
خیلی سخت نیست. نه؟ ولی اینها همه کلماتی نیستند که شما در یک کد زبان سی می بینید. باقی لغات یا دستورات، تابع نامیده می شوند. این شامل چیزی مانند printf و بسیاری از تابع های معمول که بنیان زبان C را در نوشتن برنامه شما یاری می کنند، هستند.
اگر از DOS استفاده می کنید، توابع مخصوص و اضافه داس نیز برای شما آماده است. اگر از ویندوز استفاده کنید توابع فراوانی برای ویندوز پیدا می کنید که دامنه لغات C زبان سی را به صدها لغت برای شما می رساند. البته نگران نباشید، لازم نیست همه آنها را بخاطر بسپارید. برای همین است که هر کامپایلر سی با یک مرجع بیرون می آید.
زبان ها بیشتر از فقط کلکسیونی از لغات هستند. آنها گرامر نیز دارند تا با ترکیب این لغات ایده های غیرقابل فهم را قابل فهم کنند.
به علاوه گرامر، زبان ها، قواعد، استثناعات، اختصارات و عناوین و تمام انواع مشابه را نیز دارا می باشند. زبان های برنامه نویسی نیز شبیه به زبان های گفتاری هستند و شامل اجزاء گوناگون و قواعد متعدد هستند.
- احتیاجی پیدا نمی کنید که تمام 33 کلیدواژه را حفظ کنید.
- در حقیقت از 33 کلیدواژه شاید در نهایت با نصف این تعداد بصورت منظم و بنیادی کار کنید.
- بعضی از کلیدواژه ها لغات حقیقی هستند. بعضی مختصر یا ترکیب دو یا لغات بیشتر هستند. (بعضی ها هم شاید هنوز اسم رمز شده معشوقه های بعضی از برنامه نویس ها هستند)
- هر کلیدواژه سری مشکلات خود را دارد. برای مثال else را همه جا نمی توانید استفاده کنید.
- توابعی مانند printf یک سری پرانتز احتیاج دارند و آیتم ها را در درون پرانتز می گذارند. (فعلا خود را با این مسئله درگیر نکنید، به وقتش به این قضیه می پردازیم. فعلا موقتا به علامت تایید و با لبخند فقط سر تکان بدهید و بگویید “بله، printf آیتم های زیادی احتیاج دارد” )
- بهرحال اینکه printf یک تابع C است و نه یک کلیدواژه برای آن است که #include <stdio.h> را در ابتدای برنامه احتیاج دارد. STDIO.H شامل دستوراتی است که به کامپایلر می گوید که printf چه است و چه چیزی دقیقا انجام می دهد. اگر خط #include <stdio.h> را تغییر دهید، کامپایلر پیغام خطایی می دهد که printf را نمی شناسد.
دن گوکین، دامیز
مقداد علی بخشی هستم. موسیقی دان، برنامه نویس، متخصص هوش مصنوعی، علم داده، متخصص بلاکچین و توسعه دهنده ربات های هوشمند.
دانش آموخته مقطع ارشد و دکتری دانشکده فنی دانشگاه تهران هستم. با سابقه تدریس درس برنامه نویسی در دانشگاه (پردیس بین الملل کیش دانشگاه تهران)