Linker error calling C-Function from Objective-C++
You may need to surround the function prototype with:
#if defined __cplusplusextern "C" {#endifvoid swrve_currency_given (...whatever goes here...);#if defined __cplusplus};#endif
That tells the compiler that it's a C function and not a C++ function.
If you are using c function in c++ file. you should use extern "c"{}
. In .h file
#ifdef __cplusplusextern "C" {#endifswrve_currency_given(parameter1, parameter2, parameter3);// a c function#ifdef __cplusplus}#endif
extern "C" is meant to be recognized by a C++ compiler and to notify the compiler that the noted function is (or to be) compiled in C style.
If you're linking to a library that was compiled as C code. use
extern "C" { #include "c_only_header.h"}
Take a look at When to use extern "C" in C++?