Xotira hajmi


ULASHISH

Xotira hajmini aniqlash

Ma’lumot tiplari bobida o‘zgaruvchining xotiradagi hajmi uning tipiga qarab farq qilishini aytib o‘tgan edik:

Ma’lumot tipi Hajmi
int 2 yoki 4 bayt
float 4 bayt
double 8 bayt
char 1 bayt

Xotira hajmi — tipning kompyuter xotirasida qancha joy egallashini bildiradi.

Ma’lumot tipi yoki o‘zgaruvchining hajmini (baytlarda) amalda aniqlash uchun sizeof operatoridan foydalaning:

Misol

int myInt; float myFloat; double myDouble; char myChar; printf("%zu\n", sizeof(myInt)); printf("%zu\n", sizeof(myFloat)); printf("%zu\n", sizeof(myDouble)); printf("%zu\n", sizeof(myChar));
O‘zingiz sinab ko‘ring »

E’tibor bering, natijani chop etish uchun %d o‘rniga %zu format spetsifikatoridan foydalanamiz. Buning sababi shundaki, kompilyator sizeof operatori size_t tipidagi qiymat qaytarishini kutadi, bu esa ishorasiz butun son tipidir (unsigned integer). Ba’zi kompyuterlarda %d bilan ham ishlashi mumkin, biroq aynan size_t qiymatlarini chop etish uchun mo‘ljallangan %zu spetsifikatoridan foydalanish xavfsizroq va ko‘chiriluvchanroq (portable).

Nega ma’lumot tiplarining hajmini bilishim kerak?

Ma’lumot tiplarining hajmini bilish dasturingiz qancha xotira ishlatishini tushunishga yordam beradi. Bu kattaroq dasturlar yozishda yoki cheklangan xotira bilan ishlashda muhim, chunki u unumdorlikka ham, samaradorlikka ham ta’sir qilishi mumkin.

Masalan, char tipining hajmi 1 bayt. Demak, agar sizda 1000 ta char qiymatdan iborat massiv bo‘lsa, u xotiradan 1000 bayt (1 KB) joy egallaydi.

To‘g‘ri maqsad uchun to‘g‘ri ma’lumot tipidan foydalanish xotirani tejaydi va dasturingiz unumdorligini oshiradi.

sizeof operatori va undan turli vaziyatlarda qanday foydalanish haqida ushbu darslikda keyinroq batafsil bilib olasiz.





W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!