在C中返回之前挂钩一个函数

时间:2014-02-19 16:54:09

标签: c

我正在考虑将一些代码注入函数并在函数返回之前运行该代码。但是,我不希望将要作为头文件等注入该函数的代码包含在内。

有没有办法,以一种方式编译文件,这样我们就不需要将额外的代码作为头文件包含在内,同时我们可以在specefic函数中注入额外的代码并在它之前运行它终止..

只是寻找想法..

由于

1 个答案:

答案 0 :(得分:0)

也许回调可以完成这项工作,例如:

typedef void (*fpointer)(void);

void foo(void){
    //fooing
}

void bar(void){
    //baring
}

void f(fpointer some_function){

    //do the joob

    //some other job before exiting
    some_function();
}

并将其用作

f(foo);

f(bar);