在 C/C++ 的项目当中,为了同一套代码满足不同的要求,我们往往需要一些信息来对代码进行复用
- 当前系统是Windows/MacOs/Linux
- 当前的编译器类型
- 当前编译器使用的语言标准 C99/C11/C17。
- 当前的编译模式。Debug/Release。程序的 Release 版并不需要 Debug 版中的某些函数
- 自定义的预处理器符号
只要充分利用预处理器指令、宏和条件编译,可以使用一套代码,多个输出,实现“一鱼多吃”。
C/C++
__STDC_VERSION__
打印当前使用的c语言标准
How can I know the version of c - Stack Overflow
C#
不同于 C 和 C++ 指令,不能使用这些指令来创建宏。 预处理器指令必须是一行中唯一的说明。
Python
常见问题
终于!C++ 预处理命令知识梳理,这些你都学会了吗? C语言–条件编译(常见的编译指令)-CSDN博客 CCPP 条件编译判断系统类型_ifdef win32-CSDN博客 C语言宏定义+条件编译_条件宏定义-CSDN博客