Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 混合C和C++;关于嵌入式系统_C++_C_Interop_Accelerometer_Motion Detection - Fatal编程技术网

C++ 混合C和C++;关于嵌入式系统

C++ 混合C和C++;关于嵌入式系统,c++,c,interop,accelerometer,motion-detection,C++,C,Interop,Accelerometer,Motion Detection,所以我有以下问题: 我有一个在FreeRTOS上运行的MEMS板,包括陀螺仪、加速度计和磁强计 我无法更改任何现有代码(全部为C)。 现在我有一个C++的基本运动检测库,我用一些函数(C++中的所有)扩展了这个库。 我认为我可以用C++编译器编译所有的东西,但是我会犯下几百个错误。 我找到了一些解决C++内部函数的方法,但是我不知道如何在C中使用C++函数(或库)。 有没有可行的办法?我能以某种简单的方式包装我所有的C++代码吗? 我正在使用Keil uvision为我的嵌入式系统编译代码,以防

所以我有以下问题: 我有一个在FreeRTOS上运行的MEMS板,包括陀螺仪、加速度计和磁强计

我无法更改任何现有代码(全部为C)。 现在我有一个C++的基本运动检测库,我用一些函数(C++中的所有)扩展了这个库。 我认为我可以用C++编译器编译所有的东西,但是我会犯下几百个错误。 我找到了一些解决C++内部函数的方法,但是我不知道如何在C中使用C++函数(或库)。 有没有可行的办法?我能以某种简单的方式包装我所有的C++代码吗?
我正在使用Keil uvision为我的嵌入式系统编译代码,以防这很重要 我建议您将项目分为两个项目,一个是RTOS和C中的应用程序,另一个是运动检测库。然后,你必须在C++库API周围写一个C包装器。p>
那你就不得不这么做了,谢谢你。

这让我进步了很多。但是,我在包含已编译库时有一些错误,我将为此提出另一个问题@不可扩展的
extern“C”
很容易污染全局命名空间,请参阅: