word:16位無符號整形資料
dword:32位元組無符號整型資料(dword32)
dword64:64位元組無符號整型資料
int:32位有符號整型資料型別
int_ptr:指向int資料型別的指標型別
int32:32位符號整型
int64:64位符號整型
uint:無符號int
long:32位符號整型(long32)
ulong:無符號long
longlong:64位符號整型(long64)
short:無符號短整型(16位)
lparam:訊息的l引數
wparam:訊息的w引數(
typedef uint wparam;
typedef long lparam;
wparam是無符號整形,lparam是long型。
handle:物件的控制代碼,最基本的控制代碼型別
hicon:圖示的控制代碼
hinstance:程式例項的控制代碼
hkey:登錄檔鍵的控制代碼
hmodule:模組的控制代碼
hwnd:視窗的控制代碼
lpstr:字元指標,也就是字串變數
lpstr是mfc特有的資料型別,具體要根據編譯環境的上下文來區別。通常情況下等同於char *,如果在編譯環境中定義了使用unicode則等同於wchar *。類似的還有lpctstr等同於const char *
lpcstr:字串常量
lpstr和lpwstr是win32和vc++所使用的一種字串資料型別。lpstr被定義成是乙個指向以null(『\0』)結尾的32位ansi字元陣列指標,而lpwstr是乙個指向以null結尾的64位雙位元組字元陣列指標。cstring與lpstr轉換。
'l'代表long,'p'代表pointer(指標),『c』表示是常量 const'str'表示string。
lpctstr:根據環境配置,如果定義了unicode巨集,則是lpcwstr型別,否則則為lpcstr型別
lpcwstr:unicode字串常量
lpdword:指向dword型別資料的指標
char:8位元位元組
tchar:如果定義了unicode,則為wchar,否則為char
uchar:無符號char
wchar:16位unicode字元
bool:布林型變數
byte:位元組型別(8位)
const:常量
float:浮點資料型別
size_t:表示記憶體大小,以位元組為單位,其最大值是cpu最大定址範圍
void:無型別,相當於標準c語言中的void
winapi:windows api的函式呼叫方式,常見於sdk標頭檔案中對api函式的宣告中,相當於_stdcall
(更嚴格地說,這不是資料型別,而是一種函式呼叫約定這些只是常見的資料型別,windows資料型別還不止上面列出的型別,還包括很多種,
主要有各種資料的指標、控制代碼、無符號型別等,可以檢視sdk文件來了解windows資料型別更多的細節。
下面再給出windows資料型別命名的規律,好讓大家在遇到新的資料型別時,可以基本推論出資料型別的意義。
基本資料型別包括:byte、char、word、short、int等。
指標型別的命令方式一般是在其指向的資料型別前加「lp」或「p」,比如指向dword的指標型別為「lpdword」和「pdword」
各種控制代碼型別的命名方式一般都是在物件名前加「h」,比如位圖(bitmap)對應的控制代碼型別為「hbitmap」。
無符號型別一般是以「u」開頭,比如「int」是符號型別,「uint」是無符號型別
windows資料型別與標準c資料型別的關係檢視windows資料型別的定義可以看到,所有的windows
資料型別都是由c資料型別經過型別重定義得到的。如dword實質上就是unsigned long資料型別,32位無符號整型。而經常要用到的
handle型別實質上是無型別指標void,
handle定義為: typedof pvoid handle;
handle實際上就是乙個pvoid,那pvoid就是什麼呢?
typeof void *pvoid;
pvoid就是指向void的指標。
所有的windows資料型別都是通過這種方式在sdk的標頭檔案中進行定義的,它們都是**於標準
c的資料型別windows資料型別與windows api函式的引數、返回值或一些重要的常量使用的資料型別都是
windows資料型別。
比如以經常要要到的messagebox函式,如下:
int messagebox(
hwnd hwnd,
lpctstr lptext,
lpctstr lpcaption,
uint utype
messagebox函式的返回值是int型,是標準c資料型別,但是所有的引數都使用了windows資料型別。比如
hwnd
用於表明視窗的控制代碼
Windows資料型別
為什麼說是常見資料型別而不是全部呢?因為第一,windows資料型別太多了,比如說windows中有很多物件,每乙個物件就對應乙個控制代碼,另外還有指標等等。第二,這是沒必要的,掌握資料型別命名的一些規律看到乙個新的資料型別就能猜出它所表示的意思,列了太多大家看了反而全都記不住,如果大家一定想知道可...
WINDOWS 資料型別
windows 資料型別 handle 型別的變數用於唯一標識乙個 物件 如視窗,控制項,檔案等,windows 平台存在眾多這樣的物件,物件是程式操作的目標 bool 布林型變數 byte 位元組型別 char 8位元位元組 dword 32位無符號整型資料 dword32 32位無符號整型資料 ...
Windows資料型別
word 16位無符號整形資料 dword 32位元組無符號整型資料 dword32 dword64 64位元組無符號整型資料 int 32位有符號整型資料型別 int ptr 指向int資料型別的指標型別 int32 32位符號整型 int64 64位符號整型 uint 無符號int long 3...