1. 准备环境

第1步:从网上下载好mingw-64: 第2步:添加到环境变量中; 第3步:在Matlab中的命令行输入mex -setup检查是否提示找到编译器 第4步:如果还是提示找不到,命令行输入并执行 setenv('MW_MINGW64_LOC','D:\mingw64')。注意:执行时,需要把'D:\mingw64'替换成自己的路径。

2. 自定义C/C++函数并在Matlab中导入dll库

在下面示例中,通过VS定义了几个函数,将工程编译成dll之后,把dll文件和源文件的头文件放到Matlab的工作目录中。

2.1 定义C/C++函数

/*Test.c ——这里是.c还是.cpp应该没有影响,好像cpp中的类还有一些c中没有的特性matlab是不支持的*/

#include "stdlib.h"

#include "stdio.h"

#include "Test.h"

int c;

struct myStruct sc;

float array[] = {

10,12,13};

int myadd(int a,int b)//有传参和返回值,且为常见数据类型的函数

{

c = a + b;

return c;

}

int GetC()//无传参,有返回值,且为常见数据类型的函数

{

return c;

}

void dealStruct()//无传参和返回值

{

sc.