将 C 与 MATLAB 结合使用
使用
loadlibrary 和 calllib 从 MATLAB® 中直接调用 C 库功能,或使用 mxArray 编写调用 MATLAB 函数的 C 程序,以便在 C 语言中访问或创建 MATLAB 变量MATLAB 提供多个针对 C 和 C++ 语言程序的接口。
注意
推荐使用 C++ 接口而不是纯 C 版本。有关详细信息,请参阅将 C++ 与 MATLAB 结合使用。
对于使用 C/C++ 库,推荐使用从 MATLAB 调用 C/C++中所述的工作流。 (自 R2022a 起)
如果您需要维护使用
loadlibrary和calllib函数调用 C 共享库函数的现有代码,请参阅从 MATLAB 中调用 C。要创建能够从 MATLAB 访问外部 C/C++ 函数和库的 MATLAB 函数,建议查阅编写可从 MATLAB(MEX 文件)调用的 C++ 函数。
如果您需要维护调用C Matrix API中函数的现有代码,请参阅编写可从 MATLAB(MEX 文件)调用的 C 函数。
要从 C/C++ 程序启动 MATLAB、计算使用参量的 MATLAB 函数,以及在 MATLAB 和 C/C++ 程序之间交换数据,建议查阅从 C++ 调用 MATLAB。
如果您需要维护调用 MATLAB Engine API for C 中函数的现有代码,请参阅从 C 调用 MATLAB。
如果您必须编写自定义程序来与 MATLAB 数据交互(例如,您要从外部应用程序读取数据,但您没有访问源代码的权限),则请参阅编写 C 程序以读取 MAT 文件数据。
编写 C/C++ 代码以处理 MATLAB 数据的推荐方法是使用MATLAB Data API for C++。MATLAB C Matrix API 对 C++ 语言的支持有限。
类别
- 从 MATLAB 中调用 C
使用calllib函数从 MATLAB R2021b 或更早版本直接调用 C 库函数
- 编写可从 MATLAB(MEX 文件)调用的 C 函数
创建可以从 MATLAB R2017b 或更早版本中调用的 C 函数,使用mxArray访问 MATLAB 变量并创建返回 MATLAB 的数组
- 从 C 调用 MATLAB
使用mxArray从 C 程序中运行 MATLAB 代码
- 编写 C 程序以读取 MAT 文件数据
使用mxArray从 C 程序中读写 MATLAB 数据
- C Matrix API
使用 C Matrix API 创建使用mxArray类型表示 MATLAB 数据的 C 程序