【发布时间】:2022-08-18 23:53:41
【问题描述】:
我想要一个函数来实现类似于列出的伪 C 代码中所示的行为。 我认为这可能通过使用函数指针来实现?
如果我梦想的这个模式很糟糕/不可能实现,我很乐意 如果它实现了相同的功能,则接受替代方案作为答案。
void log_func(const char* name, /*other args*/) {
printf(\"called function: %s\\n\", name);
if (/*calling function exited*/)
printf(\"exited function: %s\\n\", name);
}
void example_func() {
log_func(__func__); // __func__ macro is expanded to be function name as a c-string
printf(\"This function does nothing\\n\");
}
输出:
called function: example_func
This function does nothing
exited function: example_func
标签: c pointers logging gcc callback