Freigeben über


_aligned_msize_dbg

Gibt die Größe eines Speicherblocks zurück, der im Heap (nur Debugversion) zugeordnet ist.

size_t _aligned_msize_dbg(
   void *memblock,
   size_t alignment,
   size_t offset
);

Parameter

  • [in] memblock
    Zeiger auf den Speicherblock.

  • [in] alignment
    Der Ausrichtungswert, der eine integrale Potenz von 2 sein muss.

  • [in] offset
    Der Offset in die Speicherbelegung, um die Ausrichtung zu erzwingen.

Rückgabewert

Gibt die Größe (in Bytes) als ganze Zahl ohne Vorzeichen zurück.

Hinweise

Die alignment und offset-Werte müssen dieselben wie die Werte sein, die an die Funktion übergeben werden, die den Block zugeordnet ist.

_aligned_msize_dbg ist eine Debugversion der _aligned_msize-Funktion.Wenn _DEBUG nicht definiert ist, wird jeder Aufruf von _aligned_msize_dbg zu einem Aufruf von _aligned_msizereduziert._aligned_msize ableiten und _aligned_msize_dbg die Größe eines Speicherblocks im Basisheap, aber _aligned_msize_dbg fügt eine Funktion Debuggen hinzu: Sie enthält die Puffer auf beiden Seiten des Benutzers Teils des Speicherblocks in der zurückgegebenen Größe ein.

Diese Funktion untersucht den Parameter.Wenn memblock ein NULL-Zeiger ist, oder alignment keine Potenz von 2 (null) ist, wird ein ungültiger Parameter _msize-Handler auf, wie in Parametervalidierungbeschrieben.Wenn der Fehler behandelt wurde, legt die Funktion errno zu EINVAL fest und gibt -1 zurück.

Weitere Informationen zum Speicherblöcke in der Debugversion des Basisheaps zugeordnet, initialisiert und verwaltet werden, finden Sie unter Speicherverwaltung und Debugheap.Weitere Informationen zu den Typen von Zuordnungen blocks und wie diese verwendet werden, finden Sie unter Blocktypen auf dem Debugheap.Weitere Informationen über die Unterschiede zwischen den Aufrufen einer Funktion und ihrer heap Standard in einem Debugbuild Debugversion einer Anwendung finden Sie unter Verwenden der Debugversion für die Grundversion.

Anforderungen

Routine

Erforderlicher Header

_aligned_msize_dbg

<crtdbg.h>

Weitere Informationen finden Sie unter Kompatibilität Kompatibilität in der Einführung.

Bibliotheken

Debugversionen von nur C .

.NET Framework-Entsprechung

Nicht zutreffend. Um die Standard-C-Funktion aufrufen, verwenden Sie PInvoke. Weitere Informationen finden Sie unter Plattformaufruf-Beispiele.

Siehe auch

Referenz

Speicherbelegung