نوع داده ها | کلمه کلیدی | میزان حافظه | بازه مورد استفاده |
صحیح | INT | دوبایت | 32768-تا32767 |
کارکتری | CHART | یک بایت | 225تا0ویا127تا-128 |
اعشاری | FIOAT | چهاربایت | اعداد اعشاری ممیزشناور |
دقت مضاعف | DOUBLE | هشت بایت | اعداد اعشاری بزرگ بادقت بالا |
هیچ مقداری | VOID | – | برای توابعی که مقداربرنمیگردانند
|
مثال
نکته:
C متغییر ها را مقداردهی اولیه نمی کند پس قبل از استفاده باید درآن مقدار اولیه را بریزم .اگر داشته باشیم ch از نوع کارکتر آنوقت ch=300 آنگاه 300بصورت زیر برمبنای دو می رود
(100101100 )2
حالا سمت چپ ترین بیت دو ریخته می شود وبقیه مقدار chخواهد بود
Ch=(00101100)
پس در cمتغییر ها کنترل نمی شود.
در دستور انتساب ابتدا متغیر باینری سمت راست محاسبه می شود .سپس ارقام به ترتیب از سمت راست به چپ در بیت های متغییر قرار داده می شود وارقام اضافی دور ریخته می شود.
ذخیره سازی اعداد منفی :(متمم2)
10+ =(00001010)
برای پیدا کردن 10- متمم 2 می گیریم
11110110 →-10
در متغییرهای علامتدار سمت چپ ترین بیت،بیت علامت است.
در اعدادمنفی این بیت یک ودر اعداد مثبت صفر است.
مثال:در بیت علامت دار زیر چه مقداری ذخیره شده است؟
(11100101)
چون سمت چپ یک است متمم می گیریم.
عدد 27-ذخیره شده است.
مثال:
در بیت زیر چه مقداری ذخیره شده است ؟
11000110 ← علامتدار 58- بدون علامت 198+،
متغییرهای بدون علامت :در این متغییرها بیت علامت وجود ندارد وکلیه بیت های متغییرها برای ذخیره کردن عدد استفاده می شود .برای معرفی متغییرهای بدون علامت از کلمه کلیدی unsignedاستفاده می نمائیم.
;نام نوع متغییر Unsigned
Void main()
{
Unsigned char a;
Unsigned int b;
A=-1; →(11111111)2→225
B=-1;→(11111….111)3→65535
}
مثال:
Void main ()
}
Char ch;
Ch=100;
Ch=ch+100;→ch=(100)10
}