windows程式設計 方便的巨集定義

2021-06-10 19:28:59 字數 1422 閱讀 1601

wingdi.h

#define rgb(r,g,b) ((colorref)(((byte)(r)|((word)((byte)(g))<<8))|(((dword)(byte)(b))<<16)))

#define getrvalue(rgb) ((byte)(rgb))

#define getgvalue(rgb) ((byte)(((word)(rgb)) >> 8))

#define getbvalue(rgb) ((byte)((rgb) >> 16))

winnt.h

#define minchar 0x80

#define maxchar 0x7f

#define minshort 0x8000

#define maxshort 0x7fff

#define minlong 0x80000000

#define maxlong 0x7fffffff

#define maxbyte 0xff

#define maxword 0xffff

#define maxdword 0xffffffff

#define unreferenced_parameter(p) (p)

#define dbg_unreferenced_parameter(p) (p)

#define dbg_unreferenced_local_variable(v) (v)

windef.h

#define max_path 260

#define max(a,b) (((a) > (b)) ? (a) : (b))

#define min(a,b) (((a) < (b)) ? (a) : (b))

#define makeword(a, b) ((word)(((byte)(a)) | ((word)((byte)(b))) << 8))

#define makelong(a, b) ((long)(((word)(a)) | ((dword)((word)(b))) << 16))

#define loword(l) ((word)(l))

#define hiword(l) ((word)(((dword)(l) >> 16) & 0xffff))

#define lobyte(w) ((byte)(w))

#define hibyte(w) ((byte)(((word)(w) >> 8) & 0xff))

巨集定義親民級別,入門級別,常用方便巨集定義

include include using namespace std const double eps 1e 8 const只是用來定義常量,常量在 中一直存在,但define是預處理功能,有本質區別 const int maxx 0x7f7f7f7f 0x7f7f7f7f表示資料的無窮大 常用的...

程式設計技巧 巨集定義

我們來看看ios的nsassert的定義 if defined nsassertbody define nsassert condition,desc,do pragma pop no extra arg warnings while 0 endif 吊吊的,就是用乙個巨集定義來實現的,那麼我們就不...

定義帶引數的C巨集,方便輸出除錯資訊

c中除錯,肯定要有輸出。而自帶的輸出總是不夠方便 開啟時輸出太多。不知道是 輸出的。這個時候,需要自定義巨集。自定義巨集最麻煩的問題,怎麼自帶引數呢?吾有專用範例介紹給大家 function 如果沒有,可以使用 func 不同平台輸出,只要改一句即可。也可以通過ifdefine處理。define w...