主要内容

表的MEX函数源代码示例

下表包含用于创建示例MEX函数的源代码文件列表。使用这些示例作为创建自己的MEX函数的起点。这些表包含以下信息。

  • 示例名称-在MATLAB中打开源文件的链接®编辑为您的方便。您可以使用任何代码开发编辑器来创建源MEX文件。

  • 子文件夹-的子文件夹matlabroot/外面的例子包含的例子。将文件复制到可写文件夹时使用此子文件夹名。

  • Description -描述示例。

  • 更多信息-指向描述或使用示例的主题的链接,或指向示例中使用的API函数。

开始

使用墨西哥人命令来构建示例。确保安装了MATLAB支持的编译器。万博1manbetx验证为源代码语言选择的编译器类型:

墨西哥人设置

使用以下命令语法将文件复制到路径上的可写文件夹中。文件名示例的名称是and吗foldername子文件夹名。

拷贝文件(fullfile (matlabroot、“外来的”、“例子”,“foldername','文件名', '。',' f ')

例如,复制arrayProduct.c类型:

拷贝文件(fullfile (matlabroot,“外来的”“例子”墨西哥人的“arrayProduct.c”),“。”“f”

C、c++和Fortran MEX函数

要在MATLAB中或在操作系统提示下构建示例MEX函数,请使用以下命令语法。文件名示例名称是否为,andrelease-option指定示例使用的API。有关MATLAB api的信息,请参见墨西哥人选择应用程序

墨西哥人- v -release-option文件名
实例名称 示例子文件夹 描述 更多的信息
arrayFillGetPr.c refbook

填满mxArray使用mxGetDoubles

在C MEX文件中填充mxArray
arrayFillSetData.c refbook

填满mxArray与non-double值。

在C MEX文件中填充mxArray
arrayFillSetPr.c refbook

填满mxArray使用mxSetDoubles动态分配内存。

在C MEX文件中填充mxArray
arrayFillSetPrComplex.c refbook

填满mxArray使用mxSetComplexDoubles动态分配内存。

在C MEX文件中填充mxArray
arrayProduct.c 墨西哥人

用一个标量乘以1xN矩阵。

创建C源MEX文件
arrayProduct.cpp cpp_mex

一样arrayProduct.c,使用MATLAB数据API

c++墨西哥人的功能
arraySize.c 墨西哥人

说明内存需求大mxArray

在C MEX文件中处理大型mxArrays
complexAdd。F refbook

添加两个复杂的双数组。

convec.c
convec。F
refbook

通过复杂的数据。

在C MEX文件中处理复杂数据
dblmat。F
计算。F
refbook 使用Fortran%瓦尔
doubleelement.c refbook 使用无符号16位整数。 在C MEX文件中处理8-,16-,32-和64-位数据
explore.c 墨西哥人 识别输入变量的数据类型。 使用mxArrays
findnz.c refbook 使用n维数组。 在C MEX文件中操作多维数值数组
fulltosparseIC.c
fulltosparse.c
fulltosparse。Floadsparse。F
refbook 填充一个稀疏矩阵。 在C MEX文件中处理稀疏数组
matsq。F refbook 用Fortran传递矩阵。
matsqint8。F refbook 用Fortran传递非双矩阵。
mexatexit.c
mexatexit.cpp
墨西哥人 注册一个退出函数以关闭数据文件。 c++文件处理示例
mexcallmatlab.c 墨西哥人

调用内置的MATLABdisp函数。

mexcallmatlabwithtrap.c 墨西哥人 如何捕获错误信息。
mexcpp.cpp 墨西哥人 演示用C Matrix API构建的MEX文件中的一些c++语言特性。 c++类的例子
mexevalstring.c 墨西哥人 使用mexEvalString在MATLAB中赋值变量。 mexEvalString
mexfunction.c 墨西哥人 如何使用mexFunction mexFunction
mxgetproperty.c 墨西哥人 使用mxGetPropertymxSetProperty改变颜色图形对象的属性。 mxGetPropertymxSetProperty
mexgetarray.c 墨西哥人 使用mexGetVariablemexPutVariable跟踪MEX文件和MATLAB全局工作区中的计数器。 mexGetVariablemexPutVariable
mexgetarray.cpp 一样mexgetarray.c,使用matlab:引擎::getVariablematlab:引擎::setVariableMATLAB数据API 从MEX设置和获取MATLAB变量
mexlock.c
mexlockf。F
墨西哥人 如何锁定和解锁MEX文件。 mexLock
mxcalcsinglesubscript.c mx 演示基于MATLAB 1的矩阵索引与基于C 0的索引。 mxCalcSingleSubscript
mxcreatecellmatrix.c
mxcreatecellmatrixf。F
mx 创建2d单元格数组。 在C MEX文件中创建2-D Cell Array
mxcreatecharmatrixfromstr.c mx 创建二维字符数组。 mxCreateCharMatrixFromStrings
mxcreatestructarray.c mx 从C结构创建MATLAB结构。 mxCreateStructArray
mxcreateuninitnumericmatrix.c mx

创建一个未初始化的mxArray,用本地数据填充,然后返回。

mxCreateUninitNumericMatrix
mxgeteps.c
mxgetepsf。F
mx

读MATLAB每股收益价值。

mxGetEps
mxgetinf.c mx

价值。

mxGetInf
mxgetnzmax.c mx 显示稀疏矩阵中非零元素的个数及其可存储的最大非零元素个数。 mxGetNzmax
mxisclass.c mx 检查array是否是指定类的成员。 mxIsClass
mxisfinite.c mx 检查和无限值。 mxIsFinite
mxislogical.c mx

检查工作区变量是逻辑的还是全局的。

mxIsLogical
mxisscalar.c mx 检查输入变量是否为标量。 mxIsScalar
mxmalloc.c mx

分配内存复制一个MATLAB字符数组转换为c风格字符串。

mxMalloc
mxsetdimensions.c
mxsetdimensionsf。F
mx 重塑一个数组。 mxSetDimensions
mxsetnzmax.c mx 为稀疏矩阵重新分配内存,重设值公关π红外,nzmax mxSetNzmax
passstr。F refbook 通过C字符矩阵从Fortran到MATLAB。
phonebook.c refbook 操作结构和单元格数组。 在C MEX文件中传递结构和单元格数组
phonebook.cpp cpp_mex 一样phonebook.c,使用MATLAB数据API c++墨西哥人的功能
revord.c
revord。F
refbook

MATLAB副本字符c风格字符串的数组。

在C MEX文件中传递字符串
sincall.c
sincall。F填满。F
refbook

创建mxArray然后转到MATLAB情节功能。

timestwo.c
timestwo。F
refbook 演示常用的MEX文件工作流程。 在C MEX文件中传递标量值
xtimesy.c
xtimesy。F
refbook 传递多个参数。
yprime.c
yprimef。Fyprimefg。F
墨西哥人 解决简单的三体轨道问题。
yprime.cpp cpp_mex 一样yprime.c,使用MATLAB数据API c++墨西哥人的功能

C MEX函数调用Fortran子例程

下表中的示例使用C MEX函数调用LAPACK或BLAS函数。这些示例链接到一个或两个Fortran库mwlapackmwblas.要构建MEX函数,请按照“更多信息”列中列出的主题中的说明进行操作。

实例名称 示例子文件夹 描述 更多的信息
dotProductComplex.c refbook 处理从C MEX文件调用的函数的Fortran复杂返回类型。 处理Fortran Complex返回类型- dotProductComplex
matrixDivide.c refbook 调用LAPACK函数。 保持输入值不被修改
matrixDivideComplex.c refbook 用复数调用LAPACK函数。 传递复杂变量- matrixDivideComplex
matrixMultiply.c refbook 调用BLAS函数。 从C/ c++程序中传递参数给Fortran函数
utdu_slv.c refbook 使用LAPACK进行对称不定因子分解。 基于LAPACK - utdu_slv的对称不定因子分解

另请参阅

相关的话题

外部网站