mxMakeArrayComplex (C)
真正的转换mxArray
复杂,保留真实的数据
C语法
#包括“矩阵。h " int mxMakeArrayComplex (mxArray * pa);
描述
使用mxMakeArrayComplex
把一个真实的mxArray
对一个复杂mxArray
。真正的一部分更新数组包含实际数据从原始数组中。
如果巴勒斯坦权力机构
是空的,那么函数将返回一个复杂空的吗mxArray
。
如果巴勒斯坦权力机构
很复杂,没有功能。
输入参数
输出参数
例子
假设您创建应用程序流程复杂的数据和复杂mxArrays
处理数据。如果你通过一个复杂的数组只包含实际数据MATLAB®函数,返回值是一个真正的数组。例如,调用MATLAB√6
函数与下面的输入。
一个复杂= ((2、4))
一个我4.0000 + 0.0000 = 2.0000 + 0.0000
虽然输入参数是复杂的,数据是real-only,不再是复杂的输出函数。
a1 (12 (a)
a1 = 1.4142 - 2.0000
为了保持数据的复杂性,使用mxMakeArrayComplex
函数将结果。构建墨西哥人文件complexFnc.c
:
墨西哥人-R2018acomplexFnc.c
空白mexFunction (int nlhs mxArray * plhs [], int nrhs, const mxArray * prhs []) {mxArray * rhs [1], * lh [1];/ *检查适当的数量的参数* /如果(nrhs ! = 1) {mexErrMsgIdAndTxt (“MATLAB: complexFnc: checkrhs”、“1输入必需的。”);}如果(nlhs > 1) {mexErrMsgIdAndTxt (“MATLAB: complexFnc: checklhs”,“太多的输出参数。”);}#如果MX_HAS_INTERLEAVED_COMPLEX / * * /平方根rhs [0] = mxDuplicateArray (prhs [0]);mexCallMATLAB (lh, 1,“√”);如果(! mxIsComplex (lh[0])){/ *保存数据的复杂性* / mxMakeArrayComplex (lh [0]);}plhs [0] = mxDuplicateArray (lh [0]);# endif}
版本历史
介绍了R2018a