realloc()
C stdlib realloc() funksiyasi
Misol
Ajratilgan xotirani kattalashtiring:
// Allocate memory for a number of items
int numItems = 10;
int *myArray = malloc(numItems * sizeof(int));
// Write into the memory
for(int i = 0; i < numItems; i++) {
myArray[i] = i + 1;
}
// Reallocate the memory
numItems = 20;
myArray = realloc(myArray, numItems * sizeof(int));
// Display the contents of the memory
for(int i = 0; i < numItems; i++) {
printf("%d ", myArray[i]);
}
// Free the memory
free(myArray);
myArray = NULL;
O‘zingiz sinab ko‘ring »
Ta’rif va qo‘llanilishi
realloc() funksiyasi xotira bloki hajmini o‘zgartiradi va xotira blokiga ko‘rsatkich qaytaradi. Agar joriy joyda yetarli xotira bo‘lmasa, xotira bloki boshqa joyga ko‘chiriladi va boshqa ko‘rsatkich qaytariladi. Yangi ajratilgan xotiradagi qiymatlarni oldindan aytib bo‘lmaydi.
realloc() funksiyasi <stdlib.h> sarlavha faylida aniqlangan.
Xotira ajratish haqida ko‘proq bilish uchun C xotirani boshqarish darsligimizga qarang.
Sintaksis
realloc(void * ptr, size_t size);
size_t ma’lumot tipi manfiy bo‘lmagan butun sondir.
Parametr qiymatlari
| Parametr | Tavsif |
|---|---|
| ptr | Qayta ajratiladigan xotira blokini belgilaydi. |
| size | Xotira blokining baytlarda o‘lchangan yangi hajmini belgilaydi. |
Texnik tafsilotlar
| Qaytaradi: | Xotira blokiga ko‘rsatuvchi void * ko‘rsatkich. |
|---|
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
