全栈工程师开发手册 (作者:栾鹏)

​matlab2c动态链接库下载​​​matlab库函数大全
matlab2c基础教程
matlab2c开发全解教程

matlab2c调用方法:

1、下载动态链接库
2、将Matlab2c.dll拷贝到exe同目录下
3、将Matlab2c.h、Matlab2c.lib放到项目头文件目录下
4、在cpp文件中引入下面的代码

#include "Matlab2c.h"
#pragma comment(lib,"Matlab2c.lib")
using namespace Matlab2c;


matlab中blkdiag函数简介

1、blkdiag函数:生成指定对角线元素的矩阵

2、用法说明

A = blkdiag(a,b,c,d,...) 函数产生以a,b,c,d,...为对角线元素的矩阵A

blkdiag的c++源码实现

产生以输入元素为对角元素的矩阵
输入为行向量或列向量,输出为以该向量为对角线的矩阵。

Matrix Matlab2c::blkdiag(Matrix& a)
{
Matrix p(a.row*a.column,a.row*a.column);
for (int i=0;i<p.row;i++)
for (int j=0;j<p.column;j++)
{
if (i==j)
p(i,j)=a(j);
else
p(i,j)=0;
}
return p;
}

blkdiag函数的使用测试

#include "Matlab2c.h"
#pragma comment(lib,"Matlab2c.lib")
using namespace Matlab2c;

int main()
{
double a[]={1,2,3,4,5,6};
Matrix aa=Matrix(1,6,a);
Matrix bb=Matlab2c::blkdiag(aa);
cout<<bb.toString()<<endl;

system("pause");
return 0;

}