_aligned_recalloc_dbg
Změní velikost bloku paměti, která byla přidělena s _aligned_malloc nebo _aligned_offset_malloc a inicializuje paměť na 0 (pouze ladicí verze).
void * _aligned_recalloc_dbg(
void * memblock,
size_t num,
size_t size,
size_t alignment,
const char *filename,
int linenumber
);
Parametry
[v]memblock
Aktuální ukazatel bloku paměti.[v]num
Počet prvků.[v]size
Velikost v bajtech každý prvek.[v]alignment
Hodnota zarovnání musí být celočíselná mocnina 2.[v]filename
Ukazatel myši na název zdrojového souboru, která požaduje přidělení operace nebo NULL.[v]linenumber
Číslo zdrojového souboru, kde byla požadována operace přidělení nebo NULL.
Vrácená hodnota
_aligned_recalloc_dbgNeplatný 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 případě se nemění původní blok.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_recalloc_dbgladicí verzi je _aligned_recalloc funkce.Při _DEBUG není definována, každé volání _aligned_recalloc_dbg na volání _aligned_recalloc.I _aligned_recalloc a _aligned_recalloc_dbg přerozdělit blok paměti haldy základní, ale _aligned_recalloc_dbg vejde několik funkce ladění: vyrovnávacích pamětí na obou stranách uživatele část bloku test těsnosti parametr typu blok sledování přidělení zvláštních typů a filename/linenumber informace k určení původu žádosti o přidělení.
_aligned_recalloc_dbgreallocates blok paměti zadaná se trochu více místa než požadovaná velikost (num * size) a které může být větší nebo menší než velikost bloku původně přidělené paměti.Další místo používá správce hald ladění bloků paměti ladění propojení a k aplikaci s ladicími informacemi hlavičky a přepsat vyrovnávací paměti.Přerozdělení může způsobit přesunutí do jiného umístění v haldě původní blok paměti, jakož i změny velikosti bloku paměti.Uživatel část bloku je vyplněno hodnotou, 0xCD, a vyplní přepsat vyrovnávací paměti 0xFD.
_aligned_recalloc_dbgNastaví errno na ENOMEM Pokud dojde k selhání přidělení paměti; EINVALbude vrácena, pokud překročí množství paměti potřebné (včetně režie uvedenou dříve) _HEAP_MAXREQ.Informace o této a dalších chybové kódy, Kód chyby, _doserrno, _sys_errlist a _sys_nerr.
Také _aligned_recalloc_dbg 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.
Informace o jak jsou bloky paměti přidělené, inicializován a spravuje v ladicí verzi základní haldy Správa paměti a ladění haldy.Informace o rozdílech mezi voláním funkce standardní haldy oproti verzi své ladění v ladicí verzi aplikace naleznete v tématu pomocí ladění verze Versus the Base verze.
Požadavky
Rutina |
Požadované záhlaví |
---|---|
_aligned_recalloc_dbg |
<crtdbg.h> |
Další informace o kompatibilitě v tématu Compatibility v úvodu.
Knihovny
Ladění verze C Runtime knihovny pouze.
Ekvivalent v rozhraní .NET Framework
Nelze použít Použijte volání funkce standardní C, PInvoke. Další informace naleznete v tématu Příklady vyvolat platformu.