gpt4 book ai didi

c - 在 C (gcc) 中获取指向当前函数的指针?

转载 作者:太空狗 更新时间:2023-10-29 16:41:24 25 4
gpt4 key购买 nike

gcc 中是否有一个魔法变量保存指向当前函数的指针?

我想要一种表,其中包含每个函数指针的一组信息。

我知道有一个 __func__ 变量包含当前函数的名称作为字符串而不是函数指针。

这不是调用函数,只是作为索引。

编辑基本上我想做的是能够在执行当前函数之前运行嵌套函数(并且还捕获返回以执行一些事情。)基本上,这就像 __cyg_profile_func_enter 和 __cyg_profile_func_exit(检测函数)...但问题是这些检测函数是全局的,而不是函数专用的。

编辑在 linux 内核中,您可以使用 include/linux/kallsyms.h 中的 unsigned long kallsyms_lookup_name(const char *name) ...请注意 CONFIG_KALLSYMS 选项必须被激活。

最佳答案

void f() {
void (*fpointer)() = &f;
}

关于c - 在 C (gcc) 中获取指向当前函数的指针?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2154852/

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