در زبان های برنامه نویسی متغیر (Variable) به عنوان ظرفی است که مقداری را در خود نگه می دارد. نوع داده (Data Type) نیز نوع مقداری که متغیر می تواند در خود ذخیره کند را تعیین می کند. هر متغیر بر اساس نوعی که با آن تعریف شده مقداری از فضای حافظه را اشغال می کند. در زبان C چهار نوع داده پایه وجود دارند که عبارتند از:
تاریخچه و شروع برنامه نویسی در زبان C
- نوع داده char : برای ذخیره سازی یک کاراکتر استفاده می شود.
- نوع داده int : برای ذخیره سازی اعداد صحیح استفاده می شود.
- نوع داده float : برای ذخیره سازی اعداد ممیز شناور (اعداد اعشاری) استفاده می شوند.
- نوع داده double : برای ذخیره سازی اعداد ممیز شناور (اعداد اعشاری) استفاده می شوند.
اندازه هر یک از انواع داده بالا بستگی به پردازنده دارد. به طور مثال اندازه متغیر تعریف شده توسط نوع داده int در ماشین های ۱۶ بیتی برابر ۲ بایت، در ماشین های ۳۲ بیتی برابر ۴ بایت است. قطعه کد ۱ که در ادامه آمده است، با استفاده از تابع کتابخانه ای sizeof مشخص می کند که اندازه هر یک از متغیر های تعریف شده از انواع داده ای مختلف چند بایت است. (سیستم مورد استفاده لینوکس ۶۴ بیتی است).
به جز چهار نوع بالا نوع دیگری به نام Void نیز وجود دارد که به “نوع بی مقدار” شناخته می شود، به این معنی که هیچ نوع داده ای خاصی را برای متغیرش تعیین نمی کند. از این نوع برای تعیین توابعی استفاده می شود که هیچ مقداری را بر نمی گردانند.
تغییر دهنده های نوع داده
در زبان C به جز نوع Void مابقی انواع داده های دیگر دارای Data Type Modifiers هستند. تغییر دهنده های نوع داده مقدار اختصاص داده شده به متغیرها را تعیین می کنند. به طور مثال با قرار دادن تغییر دهنده long پیش از نوع int (قطعه کد ۱ – خط ) در یک سیستم ۶۴ بیتی (یا ۳۲ بیتی) اندازه متغیر نوع int از ۴ بایت به ۸ بایت افزایش پیدا می کند. پنج تغییر دهنده برای استفاده در زبان C وجود دارند که عبارتند از :
- short
- long
- unsigned
- signed
- long long
تغییر دهنده short همراه با int در تمامی سیستم های عامل مقدار ۲ بایت را برای آن متغیر در نظر می گیرد. تغییر دهنده long باعث افزایش بایت مقدار پیشفرض هر نوع داده می شود. به طور مثال مقدار double در سیستم ۶۴ بیتی برابر ۸ بایت است که با افزودن long به آن مقدار متغیر double به ۱۰ بایت افزایش پیدا می کند. متغیر های که از تغییر دهنده unsigned استفاده می کنند، تنها اعداد مثبت (Positive) را قبول می کنند. signed تغییر دهنده پیش فرض است و اگر آنرا ننویسید به صورت خودکار اعمال شده است. signed باعث می شود که هم اعداد مثبت و منفی قابل قبول باشند.
جدول ۱ لیست نوع های مختلف داده ای و تغییر دهنده ها را به همراه اندازه و محدوده قابل قبول هر یک را نشان می دهد.