c - 如何取消定义库函数以使用我们的相同函数版本

标签 c

如何取消定义库函数以使用我的相同函数版本。请注意,我需要包含同一文件的其他功能的头文件。所以不包括不是一个选择。有没有不改名字就可以使用的方法?

最佳答案

您可以执行以下操作:

#define function_name function_name_orig
#include <library.h>
#undef function_name

int function_name() {
    /* ... */
}

这样函数将不会由 header 定义,因为它将被替换为 function_name_orig。头文件中的 getter 或 setter 实现可能会继续工作 - 即使它们使用 function_name,因为这些调用也将被替换。

关于c - 如何取消定义库函数以使用我们的相同函数版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17614686/

相关文章:

c - 从 BIOS 加载 Linux 操作系统内核

c - 使用 C 对链表进行排序

c - 除了 for 循环之外,还有其他方法可以检查凯撒密码中是否为整数吗? CS50 pset2 凯撒密码

C - 如何解决 "Address is 0 bytes after a block of size alloc' d"

c - 为什么这个简单的 C 示例以段错误结束?

C - 访问链表内部的链表

c - 动态索引循环

c - 如何以编程方式正确地在 c 文件中的每个函数中添加打印语句?

c - 在 C 中立即(逐个数据包)从套接字接收 TCP 有效负载

c - 为什么C不支持继承?