c++ 写.mat格式文件

接触到一个matalb的程序,关于数据输出这一块,因不会使用oracle,只好用c++生成.mat格式的文件,按照matlab程序里面要求,将数据生成相应的结构形式。


1.创建double类型的数组

代码:

MATFile *pmatFile = matOpen("D:\\test.mat","w");

int Num = VecData.size();

double *dparray = new double[Num*4];

for(int i = 0;i<Num;i++)

{

   dparray[i] =VecData[i].id_1;

   dparray[Num+i] =VecData[i].id_2;

   dparray[Num*2+i] =VecData[i].id_3;

   dparray[Num*3+i] =VecData[i].id_4;

}

mxArray *pmxarray = mxCreateDoubleMatrix(Num,4,maREAL);

if(pmxarray==NULL)

{

   return;

}

memcpy_s((void*)mxGetPr(pmxarray),Num*4*sizeof(double),dparray,Num*4*sizeof(double));

matPutVariable(pmatFile,"DoubleArray",pmxarray);

delete dparray;

<
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值