print2darray.
功能这print2darray.
功能在Shrlibsample.
库显示具有三列的2-D阵列的值和可变的行数。这my2d.
参数是一系列二维数组双倍的
。这Len.
参数是行数。
exported_function void print2darray(double my2d [] [3],int len){int Indxi,Indxj;for(Indxi = 0; Indxi
此示例显示如何将通过存储在MATLAB阵列中的数据存储到C函数的C函数传递给逐行列的C函数。
加载包含的库print2darray.
功能。
如果不是(libisloaded('shllibsample'))AddPath(FullFile(MatlaBroot,'extern'那'例子'那'shrlib'))LoadLibrary('shllibsample'的)结尾
使用4行和3列创建MATLAB数组。
m =重塑(1:12,4,3)
m =4×31 5 9 2 6 10 3 7 11 4 8 12
显示值。第一列是[1 4 7 10]而不是[1 2 3 4]。
calllib('shllibsample'那'print2darray',m,4)
1 2 3 4 5 6 7 8 9 10 11 12
翻倒M.
获得所需的结果。
calllib('shllibsample'那'print2darray',m',4)
1 5 9 2 6 10 3 7 11 4 8 12
Multdoublearray.
功能这Multdoublearray.
功能在Shrlibsample.
库将数组的每个元素乘以三个。该函数使用单个下标(线性索引)导航输入数组。
exported_function void multidoublearray(double * x,int size){/ *数组的每个元素3 * / int i;for(i = 0; i
matlab.®功能签名是:
返回类型 | 姓名 | 争论 |
---|---|---|
opoundptr. |
Multdoublearray. |
(DoublePtr, |
此示例显示C函数如何更改MATLAB阵列的尺寸,以及如何恢复其形状。
加载库。
如果不是(libisloaded('shllibsample'))AddPath(FullFile(MatlaBroot,'extern'那'例子'那'shrlib'))LoadLibrary('shllibsample'的)结尾
创建一个2×5×2的输入阵列并显示其尺寸。
Vin = Reshape(1:20,2,5,2);vs = size(vin)
vs =1×32 5 2
称呼Multdoublearray.
乘以每个元素。显示输出的尺寸。
Vout = calllib('shllibsample'那'multidoublearray',vin,20);尺寸(vout)
ANS =.1×22 10.
恢复原始形状。
Vout = Rehape(Vout,VS);尺寸(vout)
ANS =.1×32 5 2