MX阵列
数据结构要编写使用MATLAB R2017b或更早版本的C程序,请使用C Matrix API中的函数。这些函数与MX阵列
数据结构,用于构建C MEX函数或C引擎应用程序。
请注意
MathWorks建议,只要可能,选择c++而不是C应用程序。有关更多信息,请参见从c++调用MATLAB或c++库在MATLAB从MATLAB直接调用C++库函数。
C Matrix API有两个版本。
的交织复合API包含自MATLAB R2018a起的C矩阵API功能。有关更多信息,请参阅MATLAB支金宝app持MEX函数中的交织复杂API.
的单独的复杂的API包含自MATLAB R2017b起的C矩阵API功能。
有关使用这些库函数的示例,请参见:
参见单个函数的示例信息。例如,请参见mxIsChar
.
小心
C矩阵API不兼容MATLAB数据API,它支持现代c+金宝app+特性。您不能使用C矩阵API函数与函数C++ MEX应用程序或MATLAB引擎API为c++.
mxIsNumeric |
确定mxArray是否为数字 |
mxIsComplex |
判断数据是否复杂 |
mxGetNumberOfDimensions |
mxArray中的维度数 |
mxGetElementSize |
存储每个数据元素所需的字节数 |
mxGetDimensions |
指向维度数组的指针 |
mxSetDimensions |
修改尺寸的数量和每个尺寸 |
mxGetNumberOfElements |
数字mxArray中的元素数 |
mxCalcSingleSubscript |
从第一个元素到所需元素的偏移量 |
mxGetM |
mxArray中的行数 |
mxSetM |
设置mxArray中的行数 |
mxGetN |
mxArray中的列数 |
mxSetN |
设置mxArray中的列数 |
空虚的 |
确定mxArray是否为空 |
mxIsFromGlobalWS |
确定是否从中复制了mxArrayMATLAB全局工作空间 |
mxDestroyArray |
MXCREATE*函数分配的可用动态内存 |
mxDuplicateArray |
对数组进行深度复制 |
mxIsInf |
确定输入是否为无穷大 |
mxisLimited |
确定输入是否有限 |
mxIsNaN |
确定输入是否为NaN (Not-a-Number) |
这个例子展示了如何将字符串传递给用C Matrix API构建的MEX函数。
这个例子展示了如何编写一个传递标量值的MEX文件。
这个例子展示了如何使用C matrix API填充一个稀疏矩阵。
这个例子展示了如何使用C Matrix API在MEX文件中使用无符号16位整数。
这个例子展示了如何将结构和单元格数组传递给用C Matrix API构建的MEX文件。
您可以通过使用类型化数据访问函数(如双打
和mxGetComplexDoubles
.