c - 是否可以使用预处理器指令验证表达式?像 #if (a == b)
问题描述
准确地说,我需要根据空指针检查函数指针。仅当函数指针映射到有效函数而不是空指针时,我才需要编译部分代码。在 c 中有可能吗?
类似于:
#if (function_pointer != NULLpointer)
{
// Code block to be compiled
}
解决方案
你不能。那是运行时评估。所以逻辑是:
if (function_pointer != NULL)
{
// Code block to be executed
}
推荐阅读
- android - 使用带有喷气背包导航组件的导航抽屉时如何更改工具栏图标(汉堡图标)
- android - 使用 Uri 在目录内创建空白文件
- python - ModuleNotFoundError:没有名为“numpy”的模块。pip install numpy 后获取“要求已满足”消息
- python - 一个类中的多个精灵在移动时相互连接,但它们应该分开
- javascript - 如何在 vanilla html css 和 javascript 中创建输入空间
- json - 验证失败时在 Laravel 中格式化 json 错误
- plugins - 在 GeckoFX 中安装插件
- c# - c# API客户端使用桌面应用程序
- angular - Ag-grid 单元测试:检查 CellRenderer 渲染的单元格的内容
- c++ - Break 关键字是退出 for 循环的最有效方法吗?C/C++