一.Windows头文件定义: typedef _W64 unsigned long ULONG_PTR, *PULONG_PTR; typedef ULONG_PTR DWORD_PTR, *PDWORD_PTR; 也就是说DWORD_PTR其实就是一个unsigned long类型,用于表示指针,因为指针就是一个地址而已。 二,VC.net basetsd.h含有下面的定义: // //Add Windows flavor DWORD_PTR types // typedef ULONG_PTR DWORD_PTR, *PDWORD_PTR; 这个东西是PlatformSDK里面的东西 三,VC中DWORD_PTR 与DWORD得区别 DWORD_PTR的定义是, 这个类型至少可以确保放得下DWORD并且确保放得下一个指针。 DWORD的长度是固定得32位, 而指针的 长度是跟硬件、系统、编译器什么的有关系的。 所以如果你是在做32位程序,那么 DWORD_PTR就跟DWORD是一回事。如果你是在 做64位程序,那么 DWORD_PTR是64位的, 而DWORD永远是32位。 |
|
来自: 血马雄风 > 《MFC与Win32》