منبع اصلی نوشتار زیر در این لینک قرار دارد

شروع به برنامه نویسی C در لینوکس

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

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

بر خلاف آنچه که تصور می شود یادگیری زبان C‌ بسیار ساده است و تنها باید آنرا از یک منبع مناسب به درستی مطالعه کرد و با تمرین بسیار آنرا یاد گرفت. برای یاد گیری زبان C‌ می توان از سیستم عامل لینوکس استفاده کرد. تفاوتی ندارد که شما از کدام توزیع لینوکسی استفاده می کند، زمانی که توزیع لینوکسی را نصب می کنید تنها باید دو چیز را بر روی آن نصب کنید :

۱- در ابتدا باید یک کامپایلر بر روی توزیع لینوکسی خود نصب کنید. gcc کامپایلر متن بازی است که توسط ریچارد استالمن نوشته شده است. این کامپایلر در تمامی توزیع های لینوکسی از مخازن آن توزیع به راحتی قابل نصب است.

GCC چیست و نصب آن در توزیع های مختلف

۲ – پس از نصب کردن کامپایلر، شاید لازم داشته باشید که یک IDE بر روی توزیع خود نصب کنید. بازهم تمامی IDE های رایج و مطرح قابلیت نصب بر روی تمامی توزیع های لینوکسی را دارند. از جمله این IDE ها می توان به موارد زیر اشاره کرد :

  • Eclips به همراه پلاگین CDT
  • Netbeans
  • KDevelop
  • CodeBlock
  • Geany

البته الزامی به استفاده از IDE نیست بلکه شما می توانید از ویرایشگر های متنی ساده مانند موارد زیر برای نوشتن کدهای خود استفاده کنید. ولی IDE با ویژگی هایی که دارد کار برنامه نویسی را برای شما ساده و از اشتباه های تایپی جلوگیری می کند.

  • vim
  • emacs
  • nano
  • gedit
  • kate

زبان C شامل بسیاری از توابع از پیش نوشته شده است که در غالب فایل های سرآیند (Header Files) در دسترس هستند. به طور مثال فایل سرایند math.h توابع ریاضیاتی مانند محاسبه سینوس و کسینوس را فراهم کرده اند. خود شما به عنوان برنامه نویس می توانید فایل های سرآیند خود را ایجاد کنید. زمانی که لینوکسی را نصب می کنید، فایل های سرآیند استاندارد C به صورت پیشفرض درون دایرکتوری usr/include/‌ ریخته می شوند.

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

لینوکس فایل های سرآیندی مانند را به عنوان واسط (Interface‌) فراهم کرده است که بازهم در زیر دایرکتوری usr/include/ قرار دارند. به طور مثال می خواهید نام کاربرانی که در حال حاظر به سیستم لاگین کرده اند را پیدا کنید، بنابراین باید در قطعه کد خود یک یا چند فایل سرآیند فراهم شده توسط لینوکس را صدا بزنید.

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

انجام فقط و محض Copy-Paste اصلا مناسب نیست. بلکه کد را دریافت می کنید و سپس به خوبی آن کد را درک می کنید. سپس خودتان آن کد را حتما پس از درک درست و کامل می نویسید و کامپایل می کنید تا نتیجه را ببینید. سپس باید همان کد را تغییر دهید یا مسئله جدیدی از آن طرح کنید. مثلا کدی برای جستجوی عناصر تکرای در یک آرایه پیدا و مطالعه کردید. بنابراین می توانید مسئله را این طور مطرح کنید که از هر تکرار چندتا وجود دارد؟ خروجی را به گونه ای چاپ کنم که تکرار ها بر اساس حروف الفبا و یا تعداد تکرا به صورت مرتب باشند؟ خروجی را چگونه به جای اینکه روی ترمینال نشان دهم، درون یک فایل ذخیره کنم؟

بنابراین بدون توجه به توزیع لینوکسی خود شما باید کامپایلری مانند gcc‌ برای زبان C و ++g برای زبان ++C را نصب کنید. یک IDE مناسب را انتخاب کنید. اصول زبان C را به درستی یاد بگیرید. سپس برای شروع کد نویسی همه چیز آماده است ولی شاید بعدها که پیشرفته تر شدید و خواستید برنامه های جدی بنویسید باید برخی از کتابخانه هایی که توسط دیگران نوشته شده است را بر روی توزیع خود نصب کنید.



برچسب ها :