برنامه نویسی ++C – بخش چهارم | تشریح برنامه

با سلام

در آموزش قبل اولین برنامه ی خودمون رو نوشتیم و اجرا کردیم. البته امیدوارم شما تونسته باشید بدون مشکل برنامه رو اجرا کنید. یکبار دیگه به کد نگاهی میندازیم.

خط اول برنامه با دوتا اسلش شروع شده. هر وقت در خطی از برنامه دوتا اسلش قرار بگیره و بعدش متن نوشته شده جلوی اون  متن به صورت کامنت در میاد. کامنتها در هنگام کامپایل و اجرای برنامه نادیده  گرفته میشن و کامپایلر از اونها رد میشه.

پس به چه دردی میخورن؟ کامنتها برای نوشتن توضیحاته که مثلا این قطعه کد چه کاری انجام میده. شما وقتی برنامه ای می نویسید درسته همون لحظه از نحوه ی کار اون بخوبی سر در میارید ولی 1 ماه دیگه که به اون برنامه دوباره سر بزنید و بخواید تغییراتی توش بدید دیگه از اون کدها سر در نخواهید آورد. و اینجاست که کامنتها به کمک میان و توضیحاتی که نوشته بودید به کمک شما میان.

هر جا احساس کردید که برنامه به توضیح اجتیاج داره حتما توضیح بنویسید. هر چه توضیحات برنامه یا به عبارتی داکیومنتیشن برنامه زیاد تر باشه در آینده به مشکل کمتری برمی خورید. یا کسی دیگه ای میخواد برنامه رو مرور کنه بفهمه که چیکار داره میکنه.

برای نوشتن توضیحات یک خطی از // استفاده میکنیم. ولی اگه بخوایم توضیحات چند خطی بنویسیم چی؟

در این صورت باید از یه اسلش و ستاره بعدش استفاده کنید و در انتها با یه ستاره و اسلش کامنت رو ببندید مثال:

خط بعدی برنامه

هست. این یک دایرکتیو کامپیالر هست. دایرکتوی ها هم کدهای زمان کامپایل هستن. یه فقط تا زمان اجرا کامپایل مورد استفاده قرار می گیرن و بعد از کامپایل به چیز دیگه ای تبدیل میشن.directive ها با یه علامت هش تگ #  مشخص میشن

مثل دایرکتیو include به کامپایلر میگه مقداری(اسم فایل) رو که جلوش مشخص شده رو به برنامه اضافه کنه. مثلا اینجا ما به کامپایلر گفتم که فایل iostream رو به این برنامه بچسبونه تا بتونیم از توابع داخل اون استفاده کنیم.

iostream شامل یک سری دستورات  برای ورود و خروج اطلاعات به کار میره. مثلا دستور cout که برای نمایش اطلاعات در مانیتور به کار میره در داخل این فایل تعریف شده.با اضافه کردن این فایل کتابخانه ای می تونیم از کدهای از قبل آماده شده مثل cout به راحتی استفاده کنیم.

خط بعدی برنامه

هست. بلاک های کد در سی++ درون آکولاد باز و بسته قرار میگین. اینها دقیقا مثل begin,end پاسکال هستن.

هر برنامه تحت سیستم عامل دارای یک نقطه ی ورودی هست. یعنی موقعی که سیستم عامل اقدام به اجرای یک فایل و بارگزاری اون فایل تو حافظه ی رم میکنه باید نقطه ی شروع اجرای برنامه رو پیدا کنه. تابع main نقطه ی شروع برنامه های نوشته شده با ++C هست.به قطعه برنامه های که به صورت مجزا عمل میکنن تابع میگن که بعدا بیشتر در مورد خواهیم گفت.

int یعنی مقداری از نوع integer یا داده ی صحیح، که بخش اعشاری نداره.اینجا int قبل main یعنی خروجی تابع main یک عدد صحیح(غیر اعشاری) است.

حالا چرا باید تابع main خروجی داشته باشه.اول اینکه همه ی توابع یه خروجی دارن. خروجی می تونه اعم از اعشاری،رشته ای، صحیح یا هر چیز دیگه باشه. ولی تابع main خروجیش int هست.

موقعی که سیستم عامل برنامه رو از تابع main شروع میکنه، بالاخره این تابع main جایی تموم میشه و باید کنترل روند ادامه کار به سیستم عامل برگرده. سیستم عامل با این عددی که از تابع main برگشته می تونه بفهمه که آیا برنامه بدون هیچ خطایی در حالت عادی تموم شده یا با یه خطا به پایان رسیده

اگه به خط آخر برنامه قبلا از آکولاد بسته توجه کنید ما نوشتیم return 0; این یعنی تابع main ما مقدار صفر رو به سیستم عامل برگردونه. معنیش اینه که برنامه بدون هیچ مشکلی به انتها رسیده.

خط بعدی

هست. این خط که با std شروع شده و بعد دوتا دونقطه و بعدش دستور cout اومده به برنامه میگه که میخواد یک چیزی توی خروجی چاپ کنه. این خروجی رشته یا عدد و سایر چیزها میتونه باشه.

وظیفه ی چاپ خروجی با دستور cout (console out) هست. بعداز cout علامت >> قرار میگیره. یعنی میخواییم چیزی در خروجی چاپ کنیم(جهت اون به سمت cout هست یعنی مسیر داده خروجی به سی اوت هست). بعدش متن رو چاپ کردیم . متن ها همیشه داخل دو کوتیشن قرار میگیرن.. بعدش دوباره >> و در آخر هم std::endl;

endl یعنی endline یعنی با نوشتن این ما میگیم میخوایم کرسر موس رو توی صفحه نمایش به خط بعد منتقل کنیم. که میشه معادل زدن یه کلید اینتر.

حالا std چی هست. std یک فضای نام هست. فضای نام برای جدا سازی کلاس های و توابع به کار میره.  فضای نام یا namespace باعث میشه که کدها با هم تداخل نداشته باشن. برنامه نویسهای سی++ اومدن دستوران ورودی و خروجی مثل cout رو در فضای نامی به نام std مخفف standard نوشتن.

برای فضای نام من یه مثالی میزنم. فکر کنید من کدی نوشتم و توش یه تابع تعریف کردl به نام DoSomthing . این تابع من رو شخص دومی میگیره و اتفاقا اون شخص هم یه تابعی به نام DoSomthing داره. خوب همونطور که میدونید توی برنامه نویسی نمیشه در یکجا دوتا تابع هم نام داشت. پس برای اینکه تداخلی پییش نیاد من تابع خودم رو درون namespace ای که احتمال انتخاب اون توسط شخص دیگه کمه قرار میدم مثلا Webexpertsir . حالا شخص دومی که از تابع من استفاده کرده دیگه مشکل تداخل براش پیش نمیاد و می تونه از تابع من به این صورت استفاده کنه.

در آخر هم با return 0; کنترل اجرای برنام رو به سیستم عامل بر گردوندیم. در آخرین خط هم با یه آکولاد بسته برنامه با اتمام میرسه. این از توضیحات ساده ترین برنامه ی سی++

اگه جایی رو متوجه نشدین و یا مشکلی دیدین تو کامتها اعلام کنید تا بیشتر توضیح بدم.

تا بعد :-)

پروژه جدید سی++

برنامه نویسی ++C – شروع کار | بخش سوم

با سلام

امروز میخوایم نوشتن برنامه با سی++ شروع کنیم.

برای شروع کار به یک کامپایلر ++C احتیاج داریم. شرکتهای زیادی کامپایلر های مختلف سی ++ دارن. کامپایلر همونطور که می دونید(شاید هم ندونید) یه برنامه هست که برنامه ی نوشته شده رو به کد ماشین تبدیل می کنه و به همراه لینکر خروجی اجرای(EXE توی ویندوز) میده.

IDE یا Integrated Development Environmet محیطیه که کامپایلر رو همراه یکسری ابزارهای دیگه ارائه میده. مثل محیط ویژوال یا ادیتور کد که نوشتن کدها رو راحت تر می کنه.

IDE های مختلفی برای کار با ++C وجود داره. Visual Studio از مایکروسافت ,C++ Builder از امبارکادرو ، Qt از دیجیا, نرم افزار های فری مثل Eclipse , Code::Block و غیره …

که شما میتونید از هرکدوم از اینها برای نوشتن کد استفاده کنید. در این سری آموزشی، از نرم افزار ویژوال استودیو 2008 مایکروسافت استفاده می کنم که همه جا براحتی پیدا میشه. برای شروع کار نرم افزار ویژوال استودیو رو اجرا می کنیم و از منوی File>New Project رو انتخاب میکنیم.

با کلیک کردن روی گزینه مورد نظر کادر انتخاب پروژه باز میشه. همونطور که در تصویر میبینید پروژه های مختلفی توی ویژوال استودیو وجود دارن مثل Visual Basic, Visual C# ,Visual C++ و غیره

هرکدوم برای زبان برنامه نویسی خاص خودشون مورد استفاده قرار میگیرن. اینجا ما با ویژوال سی++ کار داریم که طبق عکس پروژه ای از نوع Win32 Console Application رو انتخاب میکنیم

(برای دید بهتر عکسها روی اونها کلیک کنید)

پروژه جدید سی++

پروژه جدید سی ++

پس از وارد کردن نام پروژه و انتخاب مسیر اون Ok می کنیم.

کادر ویزارد تنظیمات پروژه باز میشه. که با انتخاب Application Settings از سمت چپ و انتخاب و چک دارگزینه ی Empty Project روی گزینه ی Finish کلیک میکنیم.توجه کنید که بقیه گزینه ها را تغییر ندهید.

پروژه خالی سی++

پروژه خالی سی++

پنجره خالی ویژوال استودیو آماده اضافه کردن فایل میشود. از سمت راست با زدن Add و زدن New Item نوع فایل را C++ File انتخاب کرده و اسمی برای آن برگزیده و Add را کلیک می کنیم.

افزودن فایل برای نوشتن کد

افزودن فایل برای نوشتن کد

انتخاب فایل سی++

انتخاب فایل سی++

اکنون صفحه ی سفید و کرسر موس آماده نوشتن کدهای سی ++ است

کد زیر را درون ادیتور تایپ کنید

 

 

با زدون کلیدهای Ctrl+F5 از صفحه کلید برنامه را اجرا کنید. اگر هنگام اجرا کادری مبنی بر اینکه برنامه Build شود نمایان شد Yes را انتخاب کنید. صفحه سیاه (Console) نمایان شده و پیغام Hello World… را چاپ خواهد کرد. و از شما میخواهد برای خروج کلیدی را فشار دهید. با فشار دادن کلید از برنامه خارج شده و به محیط کد نویسی وارد می شوید.

 

تبریک.

شما اولین برنامه ی ++C خود را نوشتید.

در جلسه بعدی به توضیحات برنامه ی نوشته شده خواهیم پرداخت.

تا بعد :-)

سی ++

برنامه نویسی ++C – شروع کار | بخش دوم

ادامه ی بخش اول

نرم افزارهای گرافیکی مانند فتوشاپ ، تری دی مکس ، مایا ، الستریتور  تمامی اینها با زبان سی ++ نوشته شده اند. نرم افزارهای مهندسی مانند اتوکد ، کتیا و سایر نرم افزار ها تقریبا تماما با سی++ نوشته شده است.

با سی++ تقریبا می توانید هر نرم افزاری بنویسید. این بستگی به قدرت تخیل شما و مهارت شما در این زبان دارد مهمترین قابلیت زبان سی++ شی گرایی است

شی گرایی را در بخش قبل مختصری توضیح دادیم. شی گرایی به وسیله ی کلاس ها پیاده سازی میشود. کلاس و اشیاء مفاهیمی بسیار نزدیک به هم هستند که غالبا دچار اشتباه در مورد مفاهیم کلاس  و شی رخ میدهد. در مورد کلاس ها جلوتر توضیحاتی خواهیم داد.

زبان سی ++ یک زبان قابل حمل است. قابلیت حمل یعنی چه. یعنی برنامه ای که شما به زبان سی++ نوشته اید قادر است در بسیاری از ماشین ها کامپایل شده و اجرا شود. البته نوشتن برنامه های قابل حمل خیلی راحت هم نیست. مقوله های مهمی از جمله ابزارهای استفاده شده در برنامه، کتابخانه های استفاده شده، در برنامه های با رابط گرافیکی GUI نوع رابطهای گرافیکی استفاده شد و غیره…

کتابخانه (Library ) های گسترده ای برای کار در سطح وسیعی  به زبان سی ++ موجود است. تقریبا در هر موردی از علم کامپیوتر که شما نیاز به کدهایی برای استفاده نیاز داشتید به زبان سی++ یافت میشود.

شما با چارچوبهای کاری (Framework) های مانند Qt قادر هستید تقریبا برای تمامی سیستم عامل های عمده یک بار برنامه بنویسید و با کمترین تغییرات آنرا روی بقیه سیستم عامل ها کامپایل کرده و اجرا کنید.

کدهای تولید شده به وسیله ی زبان سی++، Native یا بومی هستند. یعنی هر جا آنرا کامپایل کنید به کدهای زبان ماشین سیستمی که رو آن کامپایل کردید تبدیل میشوند. این کدهای قابلیت اجرا با سرعت بسیار بالا را دارند.

 

برای انجام کارهایی که گفته شد نیازمند داشتن مهارت در برنامه نویسی س++ داریم. من هم مانند شما در حال یادگیری این زبان هستم. پس باهم این زبان را یاد خواهیم گرفت و از قدرت آن استفاده خواهیم کرد. به امید روزی که با این زبان قدرتمند برنامه های تجاری بزرگ بنویسیم.

در بخش بعد آموزش این زبان رو شروع خواهیم کرد. پس تا بعد.

سی ++

برنامه نویسی ++C – شروع کار | بخش اول

زبان برنامه نویسی ++C (بخوانید سی پلاس پلاس) یک زبان سطح میانی و تجاری است که در سطح وسیعی از برنامه های کوچک و بزرگ کاربرد دارد. این زبان مشتق شده از زبان قدرتمند C  می باشد.

زبان سی با توجه به کاربردهای بسیاری که دارد هنوز هم محبوب ترین زبان برنامه نویسی دنیاست.با سی شما میتوانید جمع دو عدد را بنویسید. با سی شما میتوانید سیستم عامل هم بنویسید. زبان سی یک زبان سطح میانی است. چیزی ما بین زبان های سطح بالا مانند جاوا و پاسکال و سی شارپ و زبان ها سطح پایینی مانند زبان اسمبلی و زبان ماشین. برنامه های نوشته شده توسط زبان سی مسقیما به زبان ماشین ترجمه می شوند.

و اما زبان سی ++ ، زبان سی ++ را تقریبا می توان گفت همان زبان سی با امکانات بیشتر است. در زبان سی ++ مفاهیم جدید تری مانند کلاس ها ، اشیا افزوده شده اند.

زبان سی++ یک زبان شی گراست. شی گرا یعنی چه. شما اگر به اطراف خود نگاهی بیاندازید میبینید که اشیا مختلف وجود دارد. هر یک از این اشیا خصیصه هایی دارند و می توانند کارهایی انجام دهند. شی ها در زبان برنامه نویسی هم دقیقا همین مفهوم است. هر شی خصیصه هایی دارد و میتواند کارهایی انجام دهد. مثلا دوچرخه را در نظر بگیرید. دوچره چرخ دارد. رنگ دارد. مدل های مختلفی دارد. می توان با آن رکاب زد و حرکت کرد. شما با یک زبان شی گرا می توانید تمامی بخشهای اشیایی مانند دوچرخه را پیاده سازی کنید.

زبان سی ++ تقریبا متداول ترین زبان برنامه نویسی در بین برنامه های تجاری است. تقریبا تمامی بازی هایی که شما درون رایانه خود بازی می کنید با زبان سی++ نوشته شده اند