1
A
回答
4
Windows HANDLE
类型不是完全不透明的类型。 Windows定义了一些可以依赖的属性。主要的是你的问题的答案:它总是类型void *
。从Windows Data Types进入MSDN上:
HANDLE
手柄可对象。
此类型在WINNT.H声明如下:
typedef PVOID HANDLE;
后来在表中可以看到,PVOID
被定义为void *
。
所以a HANDLE
与void *
的尺寸相同。换句话说,当使用32位编译器时,它是32位,当使用64位编译器时,它是64位。您不需要将这些值中的任何一个硬编码到代码中,而只需使用sizeof(HANDLE)
。
Windows HANDLE
类型的其他属性很晦涩难懂,而且只是几乎没有记录:对于内核句柄the bottom two bits are always zero。你不应该在你的代码中依赖这个,希望你能看到你永远不会想要。我提到这是完整的,并强调微软已经定义了HANDLE
不仅仅是一个内部实现细节。
5
最佳答案是使用sizeof(HANDLE)
获取此信息。如果我没有记错,HANDLE
通常作为typedef
为void*
,因此可能是32或64位,但不应该依赖于此。
希望这会有所帮助!
相关问题
- 1. pygame的图像尺寸是多少?
- 2. SYSJOBID的最大尺寸是多少?
- 3. DataGridView的最大尺寸是多少?
- 4. RTP头的最大尺寸是多少?
- 5. 用于背景的尺寸是多少?
- 6. `show collections`返回的尺寸是多少?
- 7. Cookie的最大尺寸是多少?
- 8. iPhone plist的尺寸是多少?
- 9. Web.config的最大尺寸是多少?
- 10. UINavigationBar titleView的最大尺寸是多少?
- 11. 320 and Up Framework - 600尺寸是多少?
- 12. 用于绘图的UiView尺寸是多少?A4尺寸纸张的文件是多少?
- 13. 减少尺寸
- 14. 许多尺寸的可还原尺寸减少
- 15. 支持普通和大屏幕尺寸的PSD尺寸是多少?
- 16. 减少多维数组的尺寸
- 17. 三星S6和三星S7手机的实际视口尺寸是多少?
- 18. 如何从手柄中获取图标的尺寸?
- 19. 减少图像的尺寸
- 20. 什么的的Scripting.Dictionary的最大尺寸是多少?
- 21. iPhone可以支持的纹理的最大尺寸是多少?
- 22. WP7中MediaHistoryItem的ImageStream的最大尺寸是多少?
- 23. Android - 标题的背景图像的尺寸应该是多少?
- 24. 波西克斯的门卫尺寸是多少?
- 25. 特征矩阵的最大尺寸是多少?
- 26. 条形图中条的最大尺寸是多少?
- 27. Jagged Arrays可容纳的最大尺寸是多少?
- 28. HTML画布的最大尺寸是多少?
- 29. UITabBarItem图像的最大尺寸是多少?
- 30. FTP欢迎信息的最大尺寸是多少?
为什么不试试sizeof(HANDLE)来找出答案。我认为这是一个无效*。 – 2014-09-10 16:57:45
HANDLE通常是'void *',所以一个指针,它是4个字节(系统相关) – AndyG 2014-09-10 16:57:56
'HANDLE'不在C99中,它不在Posix中。我想这是一个Windows的东西。 – 2014-09-10 17:01:41