Exportando funções C++ para uso em executáveis em linguagem c
Se você tem funções em uma DLL escrita em C++ que você deseja acessar a partir de um módulo de linguagem C, você deve declarar essas funções com ligação c em vez de ligação do C++. A menos que especificado em contrário, o compilador C++ usa C++ (também conhecido como decoração de nome) de nomeação de tipo seguro e C++ chamando convenções, que podem ser difíceis de chamar a partir de c.
Para especificar a ligação C, especifique extern "c" para declarações de função. For example:
extern "C" __declspec( dllexport ) int MyFunc(long parm1);