C xotiraga murojaat
Dinamik xotiraga murojaat qilish
Dinamik xotira massiv kabi ishlaydi, uning ma’lumot tipi esa ko‘rsatkich tipi bilan belgilanadi.
Massivlardagi kabi, dinamik xotiradagi elementga murojaat qilish uchun uning indeks raqamini ko‘rsating:
ptr[0] = 12;
Birinchi elementga murojaat qilish uchun ko‘rsatkichni dereference qilishingiz ham mumkin:
*ptr = 12;
Misol
Dinamik xotiradan o‘qish va unga yozish:
// Allocate memory
int *ptr;
ptr = calloc(4, sizeof(*ptr));
// Write to the memory
*ptr = 2;
ptr[1] = 4;
ptr[2] = 6;
// Read from the memory
printf("%d\n", *ptr);
printf("%d %d %d", ptr[1], ptr[2], ptr[3]);
O‘zingiz sinab ko‘ring »
Ma’lumot tiplari haqida eslatma
Dinamik xotiraning o‘z ma’lumot tipi yo‘q, u shunchaki baytlar ketma-ketligi. Xotiradagi ma’lumotlar ko‘rsatkichning ma’lumot tipiga qarab ma’lum bir tip sifatida talqin qilinadi.
Bu misolda to‘rt baytga ishora qiluvchi ko‘rsatkich bitta int qiymat (4 bayt) yoki 4 ta char qiymatdan (har biri 1 bayt) iborat massiv sifatida talqin qilinishi mumkin.
Misol
int *ptr1 = malloc(4);
char *ptr2 = (char*) ptr1;
ptr1[0] = 1684234849;
printf("%d is %c %c %c %c", *ptr1, ptr2[0], ptr2[1], ptr2[2], ptr2[3]);
O‘zingiz sinab ko‘ring »
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
