怎么配置matlab使其能与c++混合编程
答案:1 悬赏:80 手机版
解决时间 2021-02-18 16:15
- 提问者网友:山高云阔
- 2021-02-18 02:53
怎么配置matlab使其能与c++混合编程
最佳答案
- 五星知识达人网友:何以畏孤独
- 2021-02-18 04:23
源代码:
#include "D:\extern\include\mat.h"
void main() {
MATFile *pMF; // mat文件
mxArray *pA; // 矩阵指针
double *A; // 数据指针
int i, j;
// 打开一个test.mat文件,只写,如果不存在就新建,否则删除重建
pMF = matOpen("test.mat", "w");
// 新建一个12*4的矩阵只有实部(在MATLAB里矩阵都是复矩阵)
pA = mxCreateDoubleMatrix(12, 4, mxREAL);
// 给这个矩阵命名为x
mxSetName(pA, "x");
// 让指针Array指向这个矩阵的数据
A = mxGetPr(pA);
// 在VC里数组是按行排放的,在MATLAB里矩阵是按列排放的,)
for (i = 0; i < 12; i++)
for (j = 0; j < 4; j++)
A[j * 12 + i] = i + 0.001 * j;
// 将矩阵写到文件test内
matPutArray(pMF, pA);
// 释放矩阵空间
mxDestroyArray(pA);
// 关闭文件
matClose(pMF);
}
#include "D:\extern\include\mat.h"
void main() {
MATFile *pMF; // mat文件
mxArray *pA; // 矩阵指针
double *A; // 数据指针
int i, j;
// 打开一个test.mat文件,只写,如果不存在就新建,否则删除重建
pMF = matOpen("test.mat", "w");
// 新建一个12*4的矩阵只有实部(在MATLAB里矩阵都是复矩阵)
pA = mxCreateDoubleMatrix(12, 4, mxREAL);
// 给这个矩阵命名为x
mxSetName(pA, "x");
// 让指针Array指向这个矩阵的数据
A = mxGetPr(pA);
// 在VC里数组是按行排放的,在MATLAB里矩阵是按列排放的,)
for (i = 0; i < 12; i++)
for (j = 0; j < 4; j++)
A[j * 12 + i] = i + 0.001 * j;
// 将矩阵写到文件test内
matPutArray(pMF, pA);
// 释放矩阵空间
mxDestroyArray(pA);
// 关闭文件
matClose(pMF);
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯