_aligned_msize_dbg
Restituisce le dimensioni di un blocco di memoria allocato nell'heap (solo per versione di debug).
size_t _aligned_msize_dbg(
void *memblock,
size_t alignment,
size_t offset
);
Parametri
[in] memblock
Puntatore al blocco di memoria.[in] alignment
Il valore di allineamento, che deve essere una potenza intera di 2.[in] offset
L'offset dell'allocazione di memoria per forzare l'allineamento.
Valore restituito
Restituisce la dimensione (in byte) come unsigned integer.
Note
I valori alignment e offset devono corrispondere ai valori passati alla funzione che ha allocato il blocco.
_aligned_msize_dbg è una versione di debug della funzione _aligned_msize. Quando _DEBUG non è definito, ogni chiamata a _aligned_msize_dbg viene ridotta a una chiamata a _aligned_msize. Sia _aligned_msize che _aligned_msize_dbg calcolano le dimensioni di un blocco di memoria nell'heap di base, ma _aligned_msize_dbg aggiunge una funzionalità di debug: include i buffer presenti su entrambi i lati del blocco di memoria nella dimensione restituita.
Questa funzione convalida il parametro. Se memblock è un puntatore a null o alignment non è una potenza di 2, _msize viene invocato un gestore di parametri non validi, come descritto in Convalida dei parametri. Se l'errore viene gestito, la funzione imposta errno a EINVAL e restituisce -1.
Per informazioni su come i blocchi di memoria allocati, vengono inizializzati e vengono gestiti nella versione di debug dell'heap di base, vedere Informazioni dettagliate sull'heap di debug CRT. Per informazioni sui tipi di blocchi di allocazione e su come vengono utilizzati, vedere Tipi di blocchi sull'heap di debug. Per informazioni sulle differenze tra chiamare una funzione standard dell'heap e la versione di debug in una build di debug di un'applicazione, consultare Versioni di debug di funzioni di allocazione heap.
Requisiti
Routine |
Intestazione obbligatoria |
---|---|
_aligned_msize_dbg |
<crtdbg.h> |
Per ulteriori informazioni sulla compatibilità, vedere Compatibilità nell'introduzione.
Librerie
Solo versioni di debug di Librerie di runtime C.
Equivalente .NET Framework
Non applicabile. Per chiamare la funzione standard C, utilizzare PInvoke. Per ulteriori informazioni, vedere Esempi di Invocazione della Piattaforma.