我必须使用MEX函数,该函数应该分配矩阵并填充它(例如,创建一个单位矩阵).这是一个代码示例:
#include <stdlib.h>
#include "mex.h"
void sample(int n, double** T)
{
(*T) = (double*)malloc(n*n*sizeof(double));
int i, j;
if ((*T) == NULL)
{
return;
}
else
{
for (i = 0; i < n; i++)
{
for (j = 0; j < n; j++)
{
if (i != j)
(*T)[i*n + j] = 0;
else
(*T)[i*n + j] = 1;
}
}
}
}
void mexFunction( int nlhs, mxArray *plhs[],
int nrhs, const mxArray *prhs[] )
{
mwSize n = *(mwSize*)mxGetData(prhs[0]); …Run Code Online (Sandbox Code Playgroud)