如何在C中重命名/别名为函数?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在C中重命名/别名为函数?相关的知识,希望对你有一定的参考价值。

说我有一个正在制作的库,我想调用函数renameputs,如何保留renameputs等中的原始stdlibstdio,以及其他,还有我自己的功能是puts吗?

#include <stdio.h>

alias puts original_puts;

void
puts(char *c) {
  original_puts(c);
}

我如何完成达到此目的的事情

答案

您不能为库函数起别名,但可以使用预处理程序指令为自己的库起别名。

例如:

mylib.h:

#include <stdio.h>

void my_puts(char *c);

#define puts(...) my_puts(__VA_ARGS__)

mylib.c:

#undef puts
void my_puts(char *c)
{
    puts(c);
}

#define puts(...) my_puts(__VA_ARGS__)

以上是关于如何在C中重命名/别名为函数?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Bamboo 中重命名 ZIP

如何在 Access 2016 中重命名本地表(而不是本地表的快捷方式)?

在php中重命名文件夹中所有图像的最佳方法是啥?

如何在 Win 7 64 位机器中重命名 gDoc 打印机

如何在带有电容器的离子中重命名平台“App”

如何在 JGit 中重命名文件