标签: makefile scons undefined-reference
如何从C程序调用C ++函数,是否可能?如果是,我该怎么办?谢谢。
答案 0 :(得分:6)
如果您尝试从C调用C ++函数,那么您可能会遇到name mangling问题。编译器执行此操作是为了支持函数重载和C ++的其他功能。
您可以使用extern "C"通知C ++编译器将从C代码调用函数CMACInit():
extern "C"
CMACInit()
extern "C" CMACInit() { ... }
当以这种方式声明时,C ++编译器不会破坏名称并将设置所有内容,以便可以从C代码调用该函数。