gpt4 book ai didi

c - 如何在运行时重命名其定义中的 C 函数名称

转载 作者:太空宇宙 更新时间:2023-11-04 01:59:25 27 4
gpt4 key购买 nike

谁能帮我解决以下问题:

问题:假设有两个函数 foo()bar() 定义为

void bar()
{
printf("bar\n");
}

void foo()
{
printf("foo\n");
bar();
}

所以,这里我想将函数名称 bar 更改为 bar_test 在其定义中而不是在调用中。这应该是运行时,不应修改源代码。

预期输出如下:

void bar_test()
{
printf("bar\n");
}

void foo()
{
printf("foo\n");
bar();
}

谢谢

最佳答案

一种方法是使用像这样的宏

#define bar() bar_test()

现在通过宏调用 bar_test() 调用 bar()

定义的函数应该按照标准调用。没有在运行时更改函数名称的选项,它也没有意义。

关于c - 如何在运行时重命名其定义中的 C 函数名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29248041/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com