关于堆分配的几个函数:
(1)GetProcessHeap
用以获取和调用进程的堆句柄.
typedef struct
{
char data[128];
}Data,*LPData;
LPData lpData;
lpData = (LPData)
HeapAlloc( GetProcessHeap(), HEAP_ZERO_MEMORY,sizeof(Data));
即在
堆内存上申请了一个不可移动的空间,大小为sizeof(Data).
(2).HeapAlloc
HeapAlloc是一个Windows API函数。它用来在指定的堆上分配内存,并且分配后的内存不可移动。
(2).HeapAlloc
HeapAlloc是一个Windows API函数。它用来在指定的堆上分配内存,并且分配后的内存不可移动。
LPVOID HeapAlloc(
HANDLE hHeap,
DWORD dwFlags,
SIZE_T dwBytes,
);
hHeap
要分配堆的句柄,可以通过HeapCreate()函数或GetProcessHeap()函数获得。
dwFlags
堆分配时的可选参数,其值可以为以下的一种或多种:
值
|
---|