_aligned_msize_dbg
Gibt die Größe eines im Heap belegten Speicherblocks zurück (nur Debugversion).
Syntax
size_t _aligned_msize_dbg(
void *memblock,
size_t alignment,
size_t offset
);
Parameter
memblock
Zeiger zum Speicherblock.
alignment
Der Ausrichtungswert, der eine ganzzahlige Potenz von 2 sein muss.
offset
Der Offset in der Speicherbelegung zum Erzwingen der Ausrichtung.
Rückgabewert
Gibt die Größe (in Bytes) als ganze Zahl ohne Vorzeichen zurück.
Hinweise
Die alignment
- und offset
-Werte müssen mit den Werten identisch sein, die an die Funktion übergeben wurden, die den Speicherblock belegt hat.
_aligned_msize_dbg
ist eine Debugversion der _aligned_msize
Funktion. Wenn _DEBUG
sie nicht definiert ist, wird jeder Anruf _aligned_msize_dbg
auf einen Anruf reduziert _aligned_msize
. _aligned_msize
und _aligned_msize_dbg
berechnen die Größe eines Speicherblocks im Basisheap, jedoch fügt _aligned_msize_dbg
eine Debugfunktionen hinzu: Es schließt die Puffer auf beiden Seiten des Benutzerteils des Speicherblocks in der zurückgegebenen Größe ein.
Diese Funktion überprüft seine Parameter. Wenn memblock
es sich um einen Nullzeiger handelt oder alignment
keine Potenz von 2 ist, _msize
wird ein ungültiger Parameterhandler aufgerufen, wie in der Parameterüberprüfung beschrieben. Wenn der Fehler behandelt wird, legt die Funktion errno
auf EINVAL
fest und gibt -1 zurück.
Informationen dazu, wie Speicherblöcke in der Debugversion des Basis heap zugeordnet, initialisiert und verwaltet werden, finden Sie unter CRT Debug Heap Details. Informationen zu den Zuordnungsblocktypen und deren Verwendung finden Sie unter "Typen von Blöcken" im Debug-Heap. Informationen zu den Unterschieden zwischen Standard heap-Funktionen und deren Debugversionen finden Sie unter Debugversionen von Heap-Zuordnungsfunktionen.
Anforderungen
Routine | Erforderlicher Header |
---|---|
_aligned_msize_dbg |
<crtdbg.h> |
Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität.
Libraries
Nur Debugversionen von C-Laufzeitbibliotheken