求大佬,解释一下这个宏的意思!
#ifdef STRICTtypedef void *HANDLE;
#define DECLARE_HANDLE(name) struct name##__ { int unused; }; typedef struct name##__ *name
#else
typedef PVOID HANDLE;
#define DECLARE_HANDLE(name) typedef HANDLE name
#endif
你百度下这几个预编译指令,进行条件编译
#ifdef #else #endif
然后
C语言中"##"的用法是 两个宏参数贴合在一起
DECLARE_HANDLE(name) struct name##__ { int unused; }; typedef struct name##__ *name
这个作用大概是帮你typedef struct
4goodworld 发表于 2020-4-7 22:17
你百度下这几个预编译指令,进行条件编译
然后
第二人弄不明白? c参考手册,还是看不懂 #ifdef STRICT // 如果字串STRICT有定义
typedef void *HANDLE; //就定义它为 无类型的指针变量,变量名为 HANDLE
不知道对不对,也是新学到这里.
页:
[1]