我想知道是否可以在静态库中调用实现在我的应用程序中而不是在库中的函数。
像这样:
静态库
foo.h
void foo_func();
foo.c
#include "foo.h"
void foo_func()
{
app_func();
}
应用
main.c
#include <foo.h>
uint8_t flag = FALSE;
uint8 main()
{
foo_func();
while(!flag);
return 0;
}
void app_func()
{
flag = TRUE;
}
最佳答案
用ar
创建的静态库只是.o
目标文件的归档。您可以调用使用 ar
创建的静态库中的任何外部函数,无论是否存在,就像使用任何 .o
文件一样。虽然有可能,但回调应用程序可能不是最佳设计选择。
关于在没有实现的静态库中调用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24562390/