سلام خدمت کاربران محترم سایت پی وی لرن.
با جلسه ای دیگر از سری جلسات دوره آموزش جامع برنامه نویسی کامپیوتر در خدمت شما هستیم.
در این جلسه قصد داریم به آموزش سینتکس یا گرامر پایه زبان های برنامه نویسی بپردازیم.
در این جلسه قرار است تا برنامه نویسی را به صورت عملی شروع کنیم.
در ادامه برنامه ساده Hello World را در زبان های مختلف برنامه نویسی، پیاده سازی خواهیم کرد.
همچنین به جزئیات گرامر زبان های برنامه نویسی نیز نگاهی خواهیم داشت.
قطعه کد زیر که به زبان C نوشته شده است، عبارت Hello World را در صفحه نمایش نشان خواهد داد.
1 2 3 4 5 6 | #include <stdio.h> int main() { /*استفاده از تابع printf برای نمایش پیغام*/ printf( "Hello, World!" ); } |
میتوانید عبارت داخل پرانتز را تغییر دهید تا عبارت چاپ شده روش صفحه نمایش نیز تغییر کند.
این برنامه کوچک به ما در فهمیدن مفاهیم پایه زبان C کمک خواهد کرد.
فعلا چیزی در مورد دستور #include <stdio.h> نمیگوییم. فقط همین قدر بدانید که باید در ابتدای تمام برنامه های نوشته شده به زبان C باشد.
هر برنامه زبان C دارای یک تابع به نام ()main است که به همراه آکولاد باز و بسته آمده است. هنگامی که یک برنامه اجرا میشود، ابتدا تابع main آن برنامه اجرا میشود.
آکولاد باز میتواند جلوی نام تابع و یا در ابتدای خط بعد قرار گیرد.
توابع قطعه کد هایی هستند که برای انجام کار خاصی به کار میروند. برای استفاده از توابع (فراخوانی تابع) کافیست نام آن ها را همراه با پرانتز بیاوریم.
در برنامه بالا ما دو تابع به نام های main و printf داریم که تابه main تابع اصلی برنامه است و تابع printf برای چاپ متن روی صفحه نمایش استفاده میشود.
در زبان های برنامه نویسی دیگر توابع ممکن است نام های مختلفی داشته باشند. مانند متد، sub routine و … .
از کامنت ها برای توضیح دادن قسمتی از کد، درون فایل برنامه استفاده میشود.
کامنت ها را میتوان با استفاده از عماگر های // و یا /* … */استفاده کرد. در برنامه بالا ما از کامنت استفاده کرده ایم.
کامنت ها کاملا توسط کامپایلر نادیده گرفته شده و کامپایل نمیشوند. بنابراین شما میتوانید هرچیزی که میخواهید را کامنت کنید.
از این ویژگی برای حذف کردن بخشی از کد نیز استفاده میشود. (کد را کامنت میکنند و کامپایلر آن تکه کد را نادیده میگیرد)
در بیشتر زبان های برنامه نویسی از جمله C، تمام دستورات با کاراکتر ; خاتمه مییابند.
در مثال بالا نیز بعد از دستور (…)printf ما از ; استفاده کرده ایم.
همچنین به یاد داشته باشید که همیشه هر دستور را برای خوانایی بیشتر، در یک خط قرار دهید.
کامپایلر های مختلفی برای زبان C وجود دارد.
یکی از محبوب ترین کامپایلر ها، کامپایلر GCC است. در این بخش ما از این کامپایلر استفاده میکنیم.
میتوانید از این لینک کامپایلر را دانلود و نصب کنید.
برنامه بالا را در فایلی به نام test.c ذخیره کنید.
بعد از نصب کامپایلر، cmd را باز کرده و به پوشه فایل test.c بروید.
برای کامپایل برنامه های نوشته شده به زبان C، از دستور gcc استفاده میکنیم. سپس نام فایل و پارامتر o- و بعد از آن، نام فایل خروجی.
1 | gcc test.c -o name |
حال میبینیم که فایل name.exe در همان پوشه ایجاد شده است. پس از اجرای فایل، پیام Hello World را میتوانیم در پنجره cmd مشاهده کنیم.
در هنگام فرآیند کامپایل، اگر برنامه خطا گرامری یا syntax داشته باشد، کامپایل خطا میدهد. پیام خطا را میتوانیم در همان پنجره cmd مشاهده کنیم.
برای مثال برنامه زیر را در نظر بگیرید:
1 2 3 4 5 | #include <stdio.h> main() { printf("Hello, World!") } |
در برنامه بالا ما بعد از تابع printf کاراکتر ; را نگذاشته ایم.
اگر برنامه را کامپایل کنیم، خطای زیر را دریافت میکنیم:
1 2 3 4 | main.c: In function 'main': main.c:7:1: error: expected ';' before '}' token } ^ |
کد زیر برنامه hello world به زبان جاوا را نشان میدهد.
1 2 3 4 5 | public class HelloWorld { public static void main(String []args) { System.out.println("Hello, World!"); } } |
قطعا تفاوت هایی بین زبان جاوا و C وجود دارد. مهم ترین تفاوت، استفاده جاوا از کلاس ها است. کلاس ها مربوط به بحث شی گرایی هستند که ما قصد نداریم فعلا آن را توضیح دهیم.
کد زیر برنامه hello world را به زبان پایتون نشان میدهد.
1 | print "Hello, World!" |
یکی از ویژگی های زبان پایتون، سادگی آن است که برنامه های آن تعداد خط کد کمتری نسبت به برنامه های مشابه در زبان های دیگر دارند.
همچنین این زبان برای شروع یادگیری برنامه نویسی توصیه میشود.
در این زبان برای نمایش پیامی در صفحه نمایش، از دستور print استفاده میشود.
در ضمن زبان های C و جاوا زبان های کامپایلری و زبان پایتون یک زبان مفسری است. یعنی شما در میتوانید برنامه را مستقیما و بدون کامپایل، اجرا کنید.
جلسه آموزش syntax یا گرامر پایه زبان های برنامه نویسی نیز به پایان رسید.
در جلسه بعد به آموزش انواع داده در برنامه نویسی خواهیم پرداخت.
علی
سلام ببخشید من هنگامی که میرم فایل کامپایل رو دانلود کنم با کلی فایل رو به رو میشم و نمی دونم کدوم رو دانلود کنم اگه میشه بگید و این که آموزش نصب هم بزارید و نکه آخر اینکه اون فایل کامپایل رو باید دال همون نوت پدی بنویسیم که دستور قبلی نوشته شده بود یا یه نوت پد جدید باز کنیم و باید بگم اگه یکم در مورد اون قسمت که باید فایل کامپایل رو داخل یه پوشه بریزید اون قسمت هم نا مفهوم بود اما در کل باید بگم بسیار عالی بود این آموزش لطفا حر چه زود تر جواب بدید تا من ادامه آموزش رو بخونم با تشکر از آموزش های بسیار عالی شما.
صادق
سلام. وقتی به صفحه دانلود میرید، یه جدول میبینید که نسخه های مختلف این کامپایلر رو برای سیستم های عامل مختلف (مثل ویندوز و لینوکس) رو گذاشته. اگه از ویندوز استفاده می کنید باید روی لینکی که نوشته شده minGW-w64 کلیک کنید. به هر حال اگه با دانلود مشکل داشتید روی این کلمه کلیک کنید تا دانلود بشه. بعد از نصب کردن کامپایلر روی ویندوز، باید متغیر محیطی (PATH) رو برای اون تنظیم کنید. توضیح دادنش در این کامنت یکم طولانی میشه بنابراین بهتره توی گوگل جستجو کنید. سایت های فارسی زیادی نصب کامپایلر زبان C رو آموزش دادن. اما برای مورد دوم، شما برای کامپایل کردن نیاید دستوری رو توی نوت پد بنویسید. باید از برنامه cmd ویندوز استفاده کنید. (روی آیکون ذره بین در نوار وظیفه دسکتاپ کلیک کنید و عبارت cmd رو تایپ کنید). در کل زبان برنامه نویسی C برای شروع کمی پیچیده تر از زبان های دیگه هست. پیشنهاد من اینه که ابتدا با زبان پایتون برنامه نویسی رو یاد بگیرید. نیازی به کامپایل هم نداره و خیلی راحت می تونید برنامه بنویسید. آموزشش هم توی سایت موجوده. باز هم اگر سوالی داشتید در خدمتم
علی
این رو یادم رفت بگم این کامل ترین آموزش بود که دیدم حتما به دوستانم هم میگم تا از این آموزش ها استفاده کنند.
علی
ممنون اما یه سوال دیگه هم هست بعد از اینکه فایل رو نوشیتیم(بانوت پد) باید با چه فرمتی اون رو ذخیره کنیم؟
صادق
سلام. بستگی به زبان برنامه نویسی داره. c. برای زبان C – برای زبان سی پلاس پلاس cpp. و برای زبان پایتون py.
در ضمن پیشنهاد می کنم از ++notepad به جای نوت پد ویندوز استفاده کنید. ظاهر زیباتر و امکانات بیشتری داره.