Sdílet prostřednictvím


_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 Kód chyby, _doserrno, _sys_errlist a _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í parametrů.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.

Viz také

Referenční dokumentace

Zarovnání dat