主要内容

このペ,ジの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。

構造体の使用制限

MATLABは構造体へのポ▪▪ンタ▪▪を返す

MATLAB®は構造体へのポ▪▪ンタ▪▪を返します。値で返すことはサポ,トされません。

構造体は他の構造体へのポ▪▪ンタ▪▪を含むことができない

入れ子にされた構造体または構造体へのポンタを含む構造体はサポトされません。ただし,matlabは,外部ラ,计算器ブラリで作成された構造体の配列にアクセスできます。

MATLAB構造体引数の要件

MATLAB構造体を外部ライブラリ関数に渡す場合,フィールド名は次の要件を満たさなければなりません。

  • 各matlabフィルド名は,ラブラリ構造体定義内のフィルド名と一致しなければなりません。

  • Matlab構造体には,ラ,ブラリ構造体定義内にないフィ,ルドを含めることはできません。

  • MATLAB構造体に含まれるフィールドの数が,ライブラリ構造体で定義されているものよりも少ない場合,MATLABは未定義のフィールドをゼロに設定します。

  • フィ,ルド名では大文字と小文字が区別されます。たとえば,ラmylibに次の構造体定義をも関数myfuncが含まれているとします。

    struct S {double len;};

    フィ,ルド名はlenです。フィ,ルド名Lenを使って構造体をmyfuncに渡すと,matlabにエラ,が表示されます。

    S.Len = 100;calllib (“mylib”“myfunc”,年代)

Cの结构体フィ,ルド名の要件

Matlabがcの结构体定義を読み込む際,matlabのフィ,ルド名では大文字と小文字が区別されません。たとえば,次の定義を含むライブラリを読み込むとき,MATLABによって2つのフィールドが作成されることはありません。

struct S {double Num;双num;};

関連するトピック