c - 检查 C 编程中是否定义了预处理器指令
问题描述
在 C 编程中,如果未定义预处理器指令,则将其忽略为未定义。下面的代码不会打印,因为 PRINT_DEFINED 宏没有定义,有没有办法在编译期间标记它以避免任何潜在的功能缺失。
# include <stdio.h>
int main (void)
{
#if PRINT_DEFINED
printf("I am printing the statement\n");
#endif
return 0;
}
使用#ifdef 和#error 的问题是我有一个很大的代码库,如果输入了任何错误的宏,假设它已定义,它将在编译中被跳过,这是不希望的。
解决方案
推荐阅读
- c++ - 如何在 Win32 C++ 中通过 IMFMediaBuffer 使用自动内存管理
- matlab - 如何在同一个文件中调用MATLAB中的多个函数
- mysql - 如何通过管理员查看 Magento 2.2.6 的最近订单
- node.js - 服务器 TLS 握手失败
- reactjs - 如何在 MapStateToProps 中映射道具?
- python - 为什么~False 给出-1 和~True -2?
- r - 在 R shell 中按顺序显示函数参数
- c++ - c++中向量中的对象指针的小问题
- python - xml.etree.ElementTree 返回对象地址而不是值
- java - HttpResponse#close() 对 BasicHttpClientConnectionManager 有什么影响?