从 C 代码调用 C 函数
在集成 C 和 C 代码时,经常会遇到从 C 代码调用 C 函数的需要在 C 内。虽然可以使用 extern "C",但此方法可能会因 g 的编译问题而失败。
替代解决方案包括使用 gcc 将 C 代码单独编译为 C 模块(.o 文件):
gcc -c -o somecode.o somecode.c
接下来,分别编译 C 代码:
g++ -c -o othercode.o othercode.cpp
最后,使用 C 将两个编译对象链接在一起链接器:
g++ -o yourprogram somecode.o othercode.o
为了使 C 编译器能够识别 C 函数声明,请将头文件包含在 othercode.cpp 中,并用 extern "C" 包装:
extern "C" { #include "somecode.h" }
头文件文件 somecode.h 应包含 C 函数的声明:
#ifndef SOMECODE_H_ #define SOMECODE_H_ void foo(); #endif
以上是如何从 C 代码成功调用 C 函数?的详细内容。更多信息请关注PHP中文网其他相关文章!