octave编写第三方包(mex文件调用C语言程序)
目录
octave编写第三方包(mex文件调用C语言程序)... 1
1.octave在数值运算、图像处理、实时仿真方面具有很大得优势,但它得运行速度远远不及C语言或C++。
2.在面对较大代码量的C语言或C++时,若将其改写成类Matlab语言运行,是极其耗费人力时间的。
octave是不能直接调用c语言的函数的,为了解决这上述问题,octave提供了和C/C++混合编程的mex接口,再编写成octave第三方包,安装在octave中,不仅将octave对运算、图形处理的优点和c语言运行速度快的特点相结合了,而且也扩展了octave相应的功能实现。
需要将c语言代码编译成mex文件才可以调用,其中会用到一些mex函数,本文档以一个加法的例子介绍一下octave与C混合编程的方法。
- mex文件
可参考:
Matlab与C/C++混合编程 Matlab调用C函数 - NZACH - 博客园 (cnblogs.com)
一个完整的MEX-file应该包括:
1.#include "mex.h" MEX-file头文件
2. mexFunction入口函数(C/C++中的main函数)