主要内容

表的MEX函数源代码示例

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

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

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

  • 描述-描述示例。

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

开始

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

mex-设置

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

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

例如,复制arrayProduct.c,类型:

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

C、c++和Fortran MEX函数

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

墨西哥人- v -释放选项文件名
示例名称 示例子文件夹 描述 更多的信息
arrayFillGetPr.c refbook

填满mxArray使用双打

在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
络合剂 refbook

添加两个复杂的双数组。

convec.c
对流
refbook

通过复杂的数据。

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

调用内置的MATLABdisp函数。

mexcallmatlabwithtrap.c 墨西哥人 如何捕获错误信息。
mexcpp.cpp 墨西哥人 说明用C矩阵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::engine::setVariableMATLAB数据API 从MEX设置和获取MATLAB变量
mexlock.c
mexlockf。F
墨西哥人 如何锁定和解锁MEX文件。 mexLock
mxcalcsinglesubscript.c mx 演示基于MATLAB 1的矩阵索引与基于C 0的索引。 mxCalcSingleSubscript
mxcreatecellmatrix.c
mxcreatecellmatrixf.F
mx 创建二维单元阵列。 在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

inf价值。

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

检查工作空间变量是逻辑变量还是全局变量。

逻辑的
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。
电话簿 refbook 操作结构和单元格数组。 C-MEX文件中的传递结构和单元数组
phonebook.cpp cpp_-mex 一样电话簿,使用MATLAB数据API c++墨西哥人的功能
revord.c
revord。F
refbook

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

在cmex文件中传递字符串
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复杂返回类型。 Handle Fortran复杂返回类型-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的对称不定因子分解

另请参阅

相关的话题

外部网站