C MEX ファイルでの 2 次元 cell 配列の作成
この例では、入力引数を cell 配列に配置する関数 mxcreatecellmatrix.c
を使用して、MEX 関数内に cell 配列を作成する方法を説明します。
C コードの解析
コードを表示するには、MATLAB® エディターで mxcreatecellmatrix.c
を開きます。
入力引数の個数に合わせた cell 配列を作成します。
cell_array_ptr = mxCreateCellMatrix((mwSize)nrhs,1);
入力引数を cell 配列にコピーします。
for( i=0; i<(mwIndex)nrhs; i++){ mxSetCell(cell_array_ptr,i,mxDuplicateArray(prhs[i]));
例のビルドとテスト
MATLAB コマンド ラインから以下のコマンドを実行します。
例をビルドします。
mex -v mxcreatecellmatrix.c
入力引数を作成します。
str1 = 'hello'; str2 = 'world'; num = 2012;
3
行 1
列の cell 配列を作成し、disp
を呼び出して内容を表示します。
mxcreatecellmatrix(str1,str2,num)
The contents of the created cell is: 'hello' 'world' [2012]