loading...
طراحی وب- برنامه نویسی
برنامه نویس بازدید : 27 جمعه 04 مرداد 1398 نظرات (0)

در جلسه گذشته همراه با یکدیگر به بررسی و نصب اولین نرم افزار خود در code blocks و زبان برنامه نویسی c پرداختیم. در این جلسه می خواهیم عناصر پایه و حیاتی این زبان را یاد بگیریم.

یک برنامه پایه در سی به فرم زیر است:

کد بالا ساختاری از برنامه معمولی سی است. بیایید در مورد هر قسمت از این برنامه توضیحی مختصر ارائه دهیم.

دستورالعمل های پیش پردازنده

پیش از آنکه یک برنامه کامپایل شود، کامپایلر از یک پیش پردازنده که قبلا در کامپایلر قرار گرفته است، استفاده می کند. خطوط پیش پردازنده با علامت (#) آغاز می شوند که در ابتدای برنامه قرار دارند. توجه کنید که علامت (#) حتما بایستی در ابتدای فایل کد نوشته شده قرار بگیرد. (#) ها کاربرد بسیاری در انجام توابع دارند، اما ما در اینجا شما را با نحوه ی اضافه کردن یک هدر یا همان دستورالعمل های پیش پردازنده با استفاده از (#) آشنا می سازیم.

اما هدر چیست؟

یک فایل هدر اطلاعاتی در مورد توابعی که می خواهیم در فایل سی استفاده کنیم به کامپایلر می دهد. پایان تمامی این هدر ها با (h.) همراه است. به عبارت دیگر با استفاده از header ها یا سربرگ ها می توانید به یک سری توابع از پیش تعریف شده دسترسی پیدا کنید.

برای مثال هدر (stdio.h) اطلاعاتی در مورد ورودی و خروجی به ما می دهد. پس از استفاده از هدر ها، شما می توانید تنها از توابعی که درون آن هدر تعریف شده است را بهره ببرید. لازم به ذکر است پایان این هدرها از سمی کالون (;) استفاده نمی شود.

برای اضافه کردن یک هدر مانند (stdio.h) دقیقا به صورت زیر عمل می کنیم:

خط بالا باعث می شود که پیش پردازنده یک نسخه از فایل (stdio.h) را در این مرحله در برنامه قرار دهد.

فایل های هدر توسط کامپایلر C ارائه می شود.

هنگامی که متوجه شدید برنامه ی شما به چندین فایل هدر نیاز دارد، می توانید آن ها را به دنبال هم بنویسید. به طور مثال شما می خواهید از (math.h) که ویژه ی استفاده از توابع دربرگیرنده ی مسائل ریاضی و جمع، تفریق و… است، استفاده نمایید.

برای اضافه کردن آن در کنار هدر (stdio.h) بایستی به صورت زیر عمل کنید:

 

توابع

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

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

توابع زیادی را می توانید در برنامه به کار ببرید اما تابع اصلی برنامه، تابع main است. ضروری است که حتما تابع ()mainرا در ابتدای کد پروژه بکار ببرید. چون خود برنامه ی سی به صورت اتوماتیک در ابتدا وارد فضای اصلی یا همان main می شود و تمامی امور روی آن اجرا می شوند.

جملات

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

کامنت ها

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

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

  • کامنت یک خطی
  • کامنت چند خطی

کامنت یک خطی

کامنت یک خطی توضیحی است که در یک خط ارائه می شود و با استفاده از علامت (//) آغاز می گردد و تا پایان خط ادامه می یابد.

مانند مثال زیر:

کامنت چند خطی

کامنت چند خطی زمانی مورد استفاده قرار می گیرد که ما تنها از یک خط استفاده نکنیم و چند خط را مد نظر داشته باشیم. به همین دلیل ابتدای کامنت با (*/) شروع و انتهای آن با (/*) پایان می پذیرد.

حال شما نکات پایه را یاد گرفتید. بیایید برنامه ای ساده در سی بنویسیم.

پروژه ای جدیدی را در Code Blocks باز نمایید و کد زیر را در آن قرار دهید.

کد بالا چگونه کار می کند؟

زبان C هیچ امکاناتی برای ورودی و خروجی ندارد. ورودی ها و خروجی ها را اپراتورهای هدر تشخیص داده می شوند. این هدرها به طور معمول در زبان سی وجود ندارند و معمولا به عنوان فایلی پیش نیاز در همه ی کامپایلرها یافت می شوند. این هدرها یا توابع کتابخانه ای را، کتابخانه ی استاندارد یا (standard I/O library) می نامند.

برای اضافه کردن ورودی و خروجی به هدر کتابخانه ای (stdio.h) نیاز داریم. برای اضافه کردن فایل های هدر باید پیش پردازنده ی (include#) را در ابتدای آن قرار دهید.

خط (int main (void)) نشان می دهد که تابع اصلی آغاز می گردد. (int) نشان می دهد که پایان تابع به یک متغیر از نوع اعداد صحیح باز می گردد.

اما چرا به یک مقدار باز می گردیم؟ وقتی که برنامه اجرا می شود، سیسم عامل مبنایی برای رسیدن به عملکرد موفقیت آمیز برنامه دارد و آن هم این است که اگر برنامه در پایان اجرا به مقدار عددی 0 رسید یعنی برنامه به درستی عمل کرده است و در غیر این صورت اجرای برنامه دارای مشکل بوده است.

اما void به چه معناست؟ void نشان می دهد که تابع main () هیچ استدلالی را قبول نمی کند و برنامه بدون خروجی مشخصی پایان می یابد.

پس از نوشتن (main(void بایستی حتما کروشه باز (}) را استفاده کنید که در کد نوشته شده بالا، در خط نهم قرار دارد و بایستی در پایان تابع یعنی خط دوازدهم از کروشه بسته ({) استفاده کنید. حتما در پایان تابع، کروشه را ببندید تا کامپایلر خطای سینتکسی ارائه ندهد.

میان دو کروشه، دامنه ی اصلی یا همان بدنه ی تابع را داریم. برای مثال در تابع ()main نوشته شده، تنها دو جمله داریم و جمله ی اول که در خط دهم است شامل پرینت کردن یا خروجی دادن Hello است که در جلسات بعد به صورت کامل نحوه ی استفاده از ()printf و امثال آن را توضیح خواهیم داد.

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

 

منبع: روکسو

 

 
ارسال نظر برای این مطلب

کد امنیتی رفرش
اطلاعات کاربری
  • فراموشی رمز عبور؟
  • آرشیو
    آمار سایت
  • کل مطالب : 346
  • کل نظرات : 0
  • افراد آنلاین : 1
  • تعداد اعضا : 0
  • آی پی امروز : 11
  • آی پی دیروز : 17
  • بازدید امروز : 47
  • باردید دیروز : 21
  • گوگل امروز : 2
  • گوگل دیروز : 5
  • بازدید هفته : 121
  • بازدید ماه : 486
  • بازدید سال : 6,995
  • بازدید کلی : 35,230