Windows Win32Memóriakernel32.dllDepreciada
LocalAlloc
Aloca memória do heap local — outra API legada de alocação, distinta (mas funcionalmente muito parecida) de GlobalAlloc.
Descrição
Resquício histórico da era 16-bit do Windows, quando 'local' e 'global' tinham significados distintos relacionados à segmentação de memória; hoje ambas mapeiam essencialmente para o mesmo mecanismo subjacente.
Header:
winbase.hDLL: kernel32.dllDepreciada
Mantida por compatibilidade; algumas APIs do Windows (ex.: certas funções que retornam buffers a serem liberados pelo chamador) ainda exigem especificamente LocalFree.
Assinatura
HLOCAL LocalAlloc(UINT uFlags, SIZE_T uBytes);Parâmetros
| Parâmetro | Tipo | Descrição |
|---|---|---|
| uFlags | UINT | LMEM_FIXED, LMEM_MOVEABLE, LMEM_ZEROINIT. |
| uBytes | SIZE_T | Tamanho do bloco a alocar. |
Valor de retorno
Um handle/ponteiro para o bloco alocado em sucesso; NULL em erro (consulte GetLastError).
Códigos de erro (GetLastError)
- ERROR_NOT_ENOUGH_MEMORY(8)
- Memória insuficiente para processar o comando.