首先看一段程序,输出的结果为两个相同的整数(这两个整数是内存地址)。
[cpp]
view plain
copy
#include "stdafx.h" #include <windows.h> int _tmain(int argc, _TCHAR* argv[]) { HLOCAL h = NULL; int *a = (int*)malloc(sizeof(int)); h = a; *a = 3; printf("%d %d/n",a,h); return 0; }
今天读《Windows核心编程》遇到了HLOCAL这个变量,
在WinDef.h中发现
typedef HANDLE HLOCAL;
在WinNt.h中发现
typedef void *HANDLE;
原来HANDLE和HLOCAL就是void*。
MSDN上的解释为:Handle to a local memory block. 直译是:一个局部的内存块。额,看typedef的这些定义,发现就是指向一块内存区域的指针。
转载请注明原文地址: https://ju.6miu.com/read-963758.html