📄 mwdataaccess.cpp
字号:
// mwDataAccess.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include "matlab.hpp"
#include "mex.h"
#include "matrix.h"
int main(int argc, char* argv[])
{
mwArray A,B;
mxArray * pMx = NULL;
double * pData=NULL;
int j,k;
A = rand(3,3);
pMx = A.GetData();
pData = mxGetPr(pMx);
cout << "通过GetData和MATLAB C数学库访问mwArray的数据:" << endl;
cout.precision(2);
for(j=0;j<9;j++)
{
cout <<pData[j]<<",";
}
cout << endl;
/*构造复数数组B*/
B = A+rand(3,3)*i();
cout << "B = " << endl;
cout.precision(3);
cout << B << endl;
double rdata5,idata5,*prdata,*pidata;
prdata = new double[3*3];
pidata = new double[3*3];
rdata5 = B.ExtractScalar(idata5,5);
cout.precision(2);
cout << "B的第5个元素的为:" << rdata5 << "+"<< idata5<<"i"<< endl;
B.ExtractData(prdata,pidata);
cout << "通过ExtractData返回的数据遍历B的各个元素:"<<endl;
for(j=0;j<3;j++)
{
for(k=0;k<3;k++)
{
cout << prdata[3*k+j] << "+" << pidata[3*k+j]<<"i ";
}
cout << endl;
}
/*ToString的使用*/
mwArray C = "No Pain! No Gain!";
mwString sC = C.ToString();
char * str = strdup((char *)sC);
while(*str!='\0')
{
cout << *str;
str++;
}
cout <<endl;
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -