_aligned_realloc
Změní velikost bloku paměti, která byla přidělena s _aligned_malloc nebo _aligned_offset_malloc.
void * _aligned_realloc(
void *memblock,
size_t size,
size_t alignment
);
Parametry
[v]memblock
Aktuální ukazatel bloku paměti.[v]size
Velikost přidělení požadované paměti.[v]alignment
Hodnota zarovnání musí být celočíselná mocnina 2.
Vrácená hodnota
_aligned_reallocNeplatný ukazatel vrátí do bloku paměti reallocated (a případně přesunutý).Vrácená hodnota je NULL -li velikost je nula a argument vyrovnávací paměti není NULL, nebo pokud není k dispozici dostatek paměti rozbalit do dané velikosti bloku.V prvním případě původní blok uvolněno.V druhém bloku původní nezměněný.Vrácená hodnota odkazuje na úložný prostor, který je zaručeně vhodně zarovnání pro skladování jakýkoli typ objektu.Získání ukazatele typu void, použití než typ odevzdaných na vrácenou hodnotu.
Je chyba přidělení paměti a změnit zarovnání do bloku.
Poznámky
_aligned_reallocje založena na malloc.Další informace o použití _aligned_offset_malloc, viz malloc.
Tato funkce nastaví errno na ENOMEM přidělení paměti se nezdařilo nebo bylo větší než požadovaná velikost _HEAP_MAXREQ.Pro více informací o errno si prohlédněte errno, _doserrno, _sys_errlist, and _sys_nerr.Také _aligned_realloc ověřuje jeho parametry.Pokud alignment není násobek 2, tato funkce vyvolá obsluhu neplatný parametr popsaným v Ověření parametru.Pokud je povoleno spuštění pokračovat, vrátí funkce hodnotu NULL a errno na EINVAL.
Požadavky
Rutina |
Požadované záhlaví |
---|---|
_aligned_realloc |
<malloc.h> |
Příklad
Další informace naleznete v _aligned_malloc.