Microsoft C预定义宏
发布时间:2020-12-13 22:43:47 所属栏目:Windows 来源:网络整理
导读:参见英文答案 How to find out cl.exe’s built-in macros4个 是否有cl.exe选项可以转储所有预定义的宏(以及定义的值). 像gcc -dM -E – / dev / null for gcc. 不幸的是,我不认为MSVC有这样做的内置方式. 我使用以下程序来转储“已知”预定义符号的值.我应
参见英文答案 >
How to find out cl.exe’s built-in macros4个
是否有cl.exe选项可以转储所有预定义的宏(以及定义的值). 像gcc -dM -E – < / dev / null for gcc.
不幸的是,我不认为MSVC有这样做的内置方式.
我使用以下程序来转储“已知”预定义符号的值.我应该给予归因(因为我知道我没有提出这个),但我没有记录我从哪里得到它(更新:看起来我可能从这里得到它:http://social.msdn.microsoft.com/Forums/en-US/vclanguage/thread/644c12ed-e3a7-4c5a-a73a-610fcc7913ca)… #define __STR2__(x) #x #define __STR1__(x) __STR2__(x) #define __PPOUT__(x) "#define " #x " " __STR1__(x) #if defined(_ATL_VER) #pragma message(__PPOUT__(_ATL_VER )) #endif #if defined(_CHAR_UNSIGNED ) #pragma message(__PPOUT__(_CHAR_UNSIGNED )) #endif #if defined(__CLR_VER ) #pragma message(__PPOUT__(__CLR_VER )) #endif #if defined(__cplusplus_cli ) #pragma message(__PPOUT__(__cplusplus_cli )) #endif #if defined(__COUNTER__ ) #pragma message(__PPOUT__(__COUNTER__ )) #endif #if defined(__cplusplus ) #pragma message(__PPOUT__(__cplusplus )) #endif #if defined(_CPPLIB_VER ) #pragma message(__PPOUT__(_CPPLIB_VER )) #endif #if defined(_CPPRTTI ) #pragma message(__PPOUT__(_CPPRTTI )) #endif #if defined(_CPPUNWIND ) #pragma message(__PPOUT__(_CPPUNWIND )) #endif #if defined(_DEBUG ) #pragma message(__PPOUT__(_DEBUG )) #endif #if defined(_DLL ) #pragma message(__PPOUT__(_DLL )) #endif #if defined(__FUNCDNAME__ ) #pragma message(__PPOUT__(__FUNCDNAME__ )) #endif #if defined(__FUNCSIG__ ) #pragma message(__PPOUT__(__FUNCSIG__ )) #endif #if defined(__FUNCTION__ ) #pragma message(__PPOUT__(__FUNCTION__ )) #endif #if defined(_INTEGRAL_MAX_BITS ) #pragma message(__PPOUT__(_INTEGRAL_MAX_BITS )) #endif #if defined(_M_ALPHA ) #pragma message(__PPOUT__(_M_ALPHA )) #endif #if defined(_M_CEE ) #pragma message(__PPOUT__(_M_CEE )) #endif #if defined(_M_CEE_PURE ) #pragma message(__PPOUT__(_M_CEE_PURE )) #endif #if defined(_M_CEE_SAFE ) #pragma message(__PPOUT__(_M_CEE_SAFE )) #endif #if defined(_M_IX86 ) #pragma message(__PPOUT__(_M_IX86 )) #endif #if defined(_M_IA64 ) #pragma message(__PPOUT__(_M_IA64 )) #endif #if defined(_M_IX86_FP ) #pragma message(__PPOUT__(_M_IX86_FP )) #endif #if defined(_M_MPPC ) #pragma message(__PPOUT__(_M_MPPC )) #endif #if defined(_M_MRX000 ) #pragma message(__PPOUT__(_M_MRX000 )) #endif #if defined(_M_PPC ) #pragma message(__PPOUT__(_M_PPC )) #endif #if defined(_M_X64 ) #pragma message(__PPOUT__(_M_X64 )) #endif #if defined(_MANAGED ) #pragma message(__PPOUT__(_MANAGED )) #endif #if defined(_MFC_VER ) #pragma message(__PPOUT__(_MFC_VER )) #endif #if defined(_MSC_BUILD ) #pragma message(__PPOUT__(_MSC_BUILD )) #endif #if defined(_MSC_EXTENSIONS ) #pragma message(__PPOUT__(_MSC_EXTENSIONS )) #endif #if defined(_MSC_FULL_VER ) #pragma message(__PPOUT__(_MSC_FULL_VER )) #endif #if defined(_MSC_VER ) #pragma message(__PPOUT__(_MSC_VER )) #endif #if defined(__MSVC_RUNTIME_CHECKS ) #pragma message(__PPOUT__(__MSVC_RUNTIME_CHECKS )) #endif #if defined(_MT ) #pragma message(__PPOUT__(_MT )) #endif #if defined(_NATIVE_WCHAR_T_DEFINED) #pragma message(__PPOUT__(_NATIVE_WCHAR_T_DEFINED)) #endif #if defined(_OPENMP ) #pragma message(__PPOUT__(_OPENMP )) #endif #if defined(_VC_NODEFAULTLIB ) #pragma message(__PPOUT__(_VC_NODEFAULTLIB )) #endif #if defined(_WCHAR_T_DEFINED ) #pragma message(__PPOUT__(_WCHAR_T_DEFINED )) #endif #if defined(_WIN32 ) #pragma message(__PPOUT__(_WIN32 )) #endif #if defined(_WIN64 ) #pragma message(__PPOUT__(_WIN64 )) #endif #if defined(_Wp64 ) #pragma message(__PPOUT__(_Wp64 )) #endif void main() {} (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
- windows-server-2008 – 按用户和登录类型过滤安
- windows – 在Win7 / WinServer中更改TCP等待ACK
- com-interop – 在.NET中注册免费COM互操作的确切
- 安装程序 – NSIS与Windows游戏资源管理器集成
- windows – SendInput()和非英文字符和键盘布局
- Win2008 R2 64Bit下IIS环境安装memcache和memcac
- windows – 如何从第x行到第y行读取文件(dos / w
- 在Windows Server上安装Redis
- 远程访问Windows Vista到Mac OSX?
- 如何在Windows中杀死正在运行的php脚本
热点阅读