日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

Windows数据类型探幽——千回百转你是谁?(1)

發(fā)布時間:2025/6/16 windows 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Windows数据类型探幽——千回百转你是谁?(1) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
Windows Data Types Windows數(shù)據(jù)類型   由微軟Windows操作系統(tǒng)所支持的各種數(shù)據(jù)類型是用來定義函數(shù)的返回值、函數(shù)和消息的參數(shù)以及結(jié)構(gòu)體成員(因為Win32程序是用C語言來編寫,所以沒有“類”這個概念)的。這些數(shù)據(jù)類型定義了上述元素的尺碼(在內(nèi)存中的,也就是占用內(nèi)存的字節(jié)數(shù))和含義。筆者以前一直不太注意這些東西,結(jié)果在程序設計時可謂步履維艱。不同類型的常/變量,在程序用扮演的角色相去甚遠,了解這些類型,對剖析程序的工作原理是非常有用的。今天又是周末,我把這些類型列出來,然后把它們的“原形”也找出來——是不是很像“照妖鏡”呀。 下面這張表里包括這些類型:字符類型(character),整數(shù)類型(integer),邏輯值類型(布爾型,海峽那邊的兄弟們喜歡叫“布林型”,Boolean),指針類型(pointer),句柄型(handle)。其中,字符類型、整數(shù)類型和邏輯值(布爾)類型是C語言編譯器通用的,也就是與標準C語言一樣。大多數(shù)指針類型都是以PPointer)或者LPLong Pointer)前綴開頭。“句柄”是指被裝載進內(nèi)存的一個資源(本質(zhì)而言就是指一定范圍內(nèi)的唯一編號)。   下面這張表是我結(jié)合MSDN里的資料制作的,因為自己也是初學,做的還比較粗糙,請大家多多指正:)
Windows數(shù)據(jù)類型本質(zhì)類型字節(jié)數(shù)定義過程(來歷)含義
ATOMunsigned short2unsigned short→WORD→ATOM在Atom表中,一鍵(16位整數(shù))一值(一個String)為一個Atom。
BOOLint*int→BOOL邏輯變量,布爾值 (取值為 TRUE 或 FALSE)
BOOLEANunsigned char1unsigned char→BYTE→BOOLEAN邏輯變量,布爾值 (取值為 TRUE 或 FALSE)
BYTEunsigned char1unsigned char→BYTE字節(jié)型,8位。
CALLBACK__stdcall調(diào)用__stdcall→CALLBACK回調(diào)函數(shù)的調(diào)用約定
CHARchar1char→CHAR8位Windows字符(ANSI)
COLORREFunsigned long4unsigned long→DWORD→COLORREF紅,綠,藍(RGB)值
CONSTconst關鍵字const→CONST常量
CRITICAL_SECTIONRTL_CRITICAL_SECTION結(jié)構(gòu)體?RTL_CRITICAL_SECTION(結(jié)構(gòu))→CRITICAL_SECTIONCritical-section對象
DWORDunsigned long4unsigned long→DWORD32位無符號整數(shù)
DWORD_PTRunsigned long4unsigned long→ULONG_PTR→DWORD_PTR(另有其它路徑)略……(用處挺大,不過太長了)
DWORD32unsigned int*unsigned int→DWORD3232位無符號整數(shù)
DWORD64unsigned __int648unsigned __int64→DWORD6464位無符號整數(shù)
FLOATfloat4float→FLOAT浮點數(shù)變量
HACCELHACCEL__結(jié)構(gòu)體指針 由DECLARE_HANDLE(name)宏定義的指向HACCEL__結(jié)構(gòu)體的指針快捷鍵列表的句柄
HANDLEvoid *(一個地址) void *→HANDLE對象的句柄
HBITMAPHBITMAP__結(jié)構(gòu)體指針 由DECLARE_HANDLE(name)宏定義的指向HBITMAP__結(jié)構(gòu)體的指針位圖的句柄
HBRUSHHBRUSH__結(jié)構(gòu)體指針 由DECLARE_HANDLE(name)宏定義……畫刷的句柄
HCONVHCONV__結(jié)構(gòu)體指針 由DECLARE_HANDLE(name)宏定義……動態(tài)數(shù)據(jù)交換(DDE)會話的句柄
HCONVLISTHCONVLIST__結(jié)構(gòu)體指針 由DECLARE_HANDLE(name)宏定義……動態(tài)數(shù)據(jù)交換(DDE)會話列表的句柄
HCURSORHICON__結(jié)構(gòu)體指針 HICON__ *→HICON→HCURSOR光標的句柄
HDCHDC__結(jié)構(gòu)體指針 由DECLARE_HANDLE(name)宏定義……設備上下文(DC)的句柄
HDDEDATAHDDEDATA__結(jié)構(gòu)體指針 由DECLARE_HANDLE(name)宏定義……動態(tài)數(shù)據(jù)交換數(shù)據(jù)的句柄
HDESKHDESK__結(jié)構(gòu)體指針 由DECLARE_HANDLE(name)宏定義……桌面(Desktop)的句柄
HDROPHDROP__結(jié)構(gòu)體指針 由DECLARE_HANDLE(name)宏定義……Handle to an internal drop structure.
HDWPvoid *(一個地址) void *→HANDLE→HDWPHandle to a deferred window position structure.
HENHMETAFILEHENHMETAFILE__結(jié)構(gòu)體指針 由DECLARE_HANDLE(name)宏定義……增強圖元文件的句柄
HFILEint*int→HFILE由OpenFile(而不是CreateFile)打開的文件的句柄.
HFONTHFONT__結(jié)構(gòu)體指針 由DECLARE_HANDLE(name)宏定義……字體的句柄
HGDIOBJvoid near * void NEAR *→HGDIOBJGDI對象的句柄
HGLOBALvoid *(一個地址) void *→HANDLE→HGLOBAL全局內(nèi)存塊的句柄
HHOOKHHOOK__結(jié)構(gòu)體指針 由DECLARE_HANDLE(name)宏定義……句子(hook)的句柄
HICONHICON__結(jié)構(gòu)體指針 由DECLARE_HANDLE(name)宏定義……圖標的句柄
HIMAGELIST_IMAGELIST結(jié)構(gòu)體指針 _IMAGELIST *→HIMAGELIST圖片列表的句柄
HIMCHIMC__結(jié)構(gòu)體指針 由DECLARE_HANDLE(name)宏定義……輸入上下文的句柄
HINSTANCEHINSTANCE__結(jié)構(gòu)體指針 由DECLARE_HANDLE(name)宏定義……實例的句柄
HKEYHKEY__結(jié)構(gòu)體指針 由DECLARE_HANDLE(name)宏定義……(另有一條路徑,一樣)注冊表鍵的句柄
HKLHKL__結(jié)構(gòu)體指針 由DECLARE_HANDLE(name)宏定義……輸入點標識符
HLOCALvoid *(一個地址) void *→HANDLE→HLOCAL本地內(nèi)存塊的句柄
HMENUHMENU__結(jié)構(gòu)體指針 由DECLARE_HANDLE(name)宏定義……菜單的句柄
HMETAFILEHMETAFILE__結(jié)構(gòu)體指針 由DECLARE_HANDLE(name)宏定義……圖元文件的句柄
HMODULEHINSTANCE__結(jié)構(gòu)體指針 HINSTANCE__*→HINSTANCE→HMODULE模塊的句柄。值由模塊的位置來決定。
HMONITORHMONITOR__結(jié)構(gòu)體指針 由DECLARE_HANDLE(name)宏定義……顯示器的句柄
HPALETTEHPALETTE__結(jié)構(gòu)體指針 由DECLARE_HANDLE(name)宏定義……調(diào)色板的句柄
HPENHPEN__結(jié)構(gòu)體指針 由DECLARE_HANDLE(name)宏定義……畫(線)筆的句柄
HRGNHRGN__結(jié)構(gòu)體指針 由DECLARE_HANDLE(name)宏定義……區(qū)域的句柄
HRSRCHRSRC__結(jié)構(gòu)體指針 由DECLARE_HANDLE(name)宏定義……資源的句柄
HSZHSZ__結(jié)構(gòu)體指針 由DECLARE_HANDLE(name)宏定義……動態(tài)數(shù)據(jù)交換(DDE)字符串的句柄
HWINSTAHWINSTA__結(jié)構(gòu)體指針 由DECLARE_HANDLE(name)宏定義……窗口狀態(tài)的句柄
HWNDHWND__結(jié)構(gòu)體指針 由DECLARE_HANDLE(name)宏定義……窗口的句柄

接下表



本文轉(zhuǎn)自 水之真諦 51CTO博客,原文鏈接:http://blog.51cto.com/liutiemeng/18905,如需轉(zhuǎn)載請自行聯(lián)系原作者

總結(jié)

以上是生活随笔為你收集整理的Windows数据类型探幽——千回百转你是谁?(1)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。