我遇到了一些C代码,其中作者在整个地方使用以下习语:
typedef __int32 FOO_INT32;
#define FOO_INT32 FOO_INT32
Run Code Online (Sandbox Code Playgroud)
这样做有什么意义?typedef不应该足够吗?对于一些不稳定的C编译器来说,这是一种解决方法吗?
cla*_*laf 29
通过该#define指令,您将能够使用以下方法测试typedef是否已在代码中的其他位置完成:
#ifdef FOO_INT32
FOO_INT32 myfoo;
#else
int myfoo;
#endif
Run Code Online (Sandbox Code Playgroud)