Windows資料型別 loppwq的部落格

2022-09-23 02:18:11 字數 1745 閱讀 9912

windows運用typedef或#define定了許多新的資料型別,後面幾節中我們曾經領略到了。它們固然多,然則都有紀律可循,許多多是對c/c++中資料型別的複雜加工,並且很輕易「見名知意」。要想進修windows程式設計,必需要理解常用的資料型別。假如你對c言語或許c++的資料型別比擬熟習的話,那麼關於一些根底的內容這個程序就是漸漸熟習的程序。這些資料型別在windows.h標頭檔案中界說:

typedef int int; /* */ typedef unsigned int uint; /* 無符號 */ typedef unsigned int *puint; /* 無符號指標 */ typedef int bool; /* 布林型別 */ typedef unsigned char byte; /* 位元組 */ typedef unsigned short word; /* word (無符號短整型) */ typedef unsigned long dword; /* double word (無符號長)*/ typedef float float; /* 浮點型 */ typedef float *pfloat; /* 指向float型別指標 */ typedef bool near *pbool; /* 指向布林型別指標 */ typedef bool far *lpbool; typedef byte near *pbyte; /* 指向位元組型別指標 */ typedef byte far *lpbyte; typedef int near *pint; /* 指標 */ typedef int far *lpint; typedef word near *pword; /* 指向word型別的指標 */ typedef word far *lpword; typedef long far *lplong; /* 指向長的指標 */ typedef dword near *pdword; /* 指向dword型別的指標 */ typedef dword far *lpdword; typedef void far *lpvoid; /* 指向void型別的指標 */ typedef const void far *lpcvoid; /* 指向void型別的常指標 */複雜說下,大區域性型別都沒有什麼新奇的**,能夠許多讀者會對誰人 far 和 near 認為有疑問,實踐上 f12 檢查界說會發現他們就界說上方:

#define far#define near看到這裡你能否照樣有疑問?其實,這個 far 和 near 只是用來標識變數的新舊的(預處置階段 far 和 near 會被交換成空字串)。 例如 pint 和 lpint 實踐上多是 int *,只不外乙個是老式寫法,乙個是舊式寫法,這多是為了相容成績。複雜的看下這些資料型別,就可以總結出:凡是是以 「p」 掃尾的多是指標(pointer)型別("lp"是老式寫法)。撇開這些不談,那麼實踐上這些 windows api 常用的一些資料構造跟我們本來所學的 c/c++ 變數差異就是乙個typedef 罷了,根底好的熟習一下就行了。不外,也不要想得這麼複雜,windows 程式設計還有一些比擬複雜的型別比方 hwnd、handle 等。在碰著不熟習的型別時請純熟的運用 「右鍵轉到界說」 或許 f12。 人人不必太甚懼怕這些複雜的型別稱號,windows 資料型別並不是內建的資料型別型別,而多是從c型別重界說失掉的。windows 資料型別名定名的紀律

無符號型別:普通是以「u」掃尾,比方「int」對應的「uint」。

指標型別:其指向的資料型別前加「lp」或「p」,比方指向 dword 的指標型別為「lpdword」和「pdword」。

控制代碼型別:以「h」掃尾。比方,hwnd 是window(wnd簡寫)也就是視窗的控制代碼,選單(menu)型別對應的控制代碼型別為 「hmenu」 等等。

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...