Simulink 嵌入式 MATLAB 函数:为自定义 C/C++ 函数使用无头文件的 coder.cinclude()

众所周知,可以在嵌入式 MATLAB 函数中将 coder.ceval(...)coder.cinclude(...) 结合使用,以调用外部 C/C++ 函数:

鲜为人知的是,你可以在 coder.cinclude() 调用中“内联”包含 C/C++ 代码,虽然这种做法略显取巧。这种方式非常实用,因为这样就不必专门管理头文件了。

请注意,在编译模型时,Simulink/MATLAB Coder 仍会检查代码能否正确编译,因此你需要确保代码能够进行“独立”编译

切记,使用占位的 <math.h> include 来结束 #include 行是绝对必要的!

这会在头文件中生成如下代码:

并且在开启足够多的注释级别后,生成的 .cpp 文件中会包含如下代码:


Check out similar posts by category: MATLAB/Simulink