共用方式為


_aligned_recalloc

變更配置與 _aligned_malloc_aligned_offset_malloc 記憶體區塊的大小並初始化記憶體為 0 。

void * _aligned_recalloc(
   void *memblock, 
   size_t num,
   size_t size, 
   size_t alignment
);

參數

  • [in] memblock
    目前的記憶體區塊指標。

  • [in] num
    項目的數目。

  • [in] size
    大小 (單位為每個項目。

  • [in] alignment
    對齊值,必須為 2 的整數次方。

傳回值

_aligned_recalloc 傳回 Void 指標到重新配置 (和可捲動) 的記憶體區塊。 如果大小為零,而且緩衝區引數不是 NULL,或者,如果沒有展開區塊的足夠的記憶體可用對特定大小,傳回值為 NULL 。 如為前者,原始區塊被釋放。 在第二種情況下,未變更原始區塊。 傳回值指向保證可以儲存任何型別的物件的適當地對齊的儲存空間。 若要取得 void 之外的類型指標,請在傳回值上使用類型轉換。

它是重新配置記憶體和變更區塊對齊的錯誤。

備註

_aligned_recallocmalloc為基礎。 如需有關使用 _aligned_offset_malloc 的詳細資訊,請參閱malloc

如果記憶體配置失敗或者要求大小大於 _HEAP_MAXREQ,這個函式會將 errno 設為 ENOMEM。 如需 errno 的詳細資訊,請參閱 errno、_doserrno、_sys_errlist 和 _sys_nerr。 此外, _aligned_recalloc 會驗證其參數。 如果 alignment 不是2的冪次方,這個函式叫用無效的參數處理常式,如 參數驗證中所述。 如果允許繼續執行,這個函式會傳回 NULL,並將 errno 設為 EINVAL。

需求

常式

必要的標頭

_aligned_recalloc

<malloc.h>

.NET Framework 對等用法

不適用。若要呼叫標準 C 函式,請使用 PInvoke。如需詳細資訊,請參閱平台叫用範例

請參閱

參考

資料對齊

_recalloc

_aligned_offset_recalloc