Octave は，データを構造体にまとめる機能をもっています。
現在の実装では，連想配列の添え字には文字列しか使用できませんが，文法はC 言語の構造体に似ています。
この章では，Octave でデータ構造体を使用する例を紹介します。
構造体の要素は，どのような変数型でも含めることができます。
たとえば，以下の3 つの式を入力すると，3 つの要素を持つ構造体ができあがります。
構造体の値を表示するには，通常の変数と同じように，単に変数名を入力するだけです。
Octave では，要素が任意の順序で表示されることに注意してください。
構造体はコピーすることができます。
構造体はそれ自体が値なので，構造体の要素として他の構造体を参照することもできます。
以下の例では，構造体x の要素b の値を，構造体に変更しています。
Octave が，他の構造体を含む構造体の値を表示するときには，ある深さまでしか表示されないことに注意してください。
以下に例を示します。
これは，深く入れ子になった構造体を出力するに当たり，長くなったり混乱したりしないようにするためのものです。
[Built-in Variable]
struct_levels_to_printに値を設定することにより，Octaveが，どの深さまで構造体を表示するかを指定できます。
標準状態は2です。
関数は，構造体を返すことができます。
たとえば，以下の関数は，行列の実部と虚部を分離して，同じ構造体変数の2つの部分に格納します。
この関数に複素数を渡して呼び出すと，fはもとの引数の実部と虚部を含むデータ構造体を返し
ます。
関数が返した値のリストは，構造体の要素を含むことになります。
また，それらは任意の他の変数のように添え字をつけることもできます。
以下の例を参照してください。
forステートメントの特別な形式をとることにより，ループの中で，構造体の全ての要素を通して処理することも可能です
（Section 12.5 [The for Statement]を参照してください）。
以下の関数を使用することにより，構造体についての情報を得ることができます。
[Built-in Function]
式expr が構造体であれば1 を返します。
[Built-in Function]
構造体struct の要素に名付けられた文字列の，セル配列を返します。
引数に構造体を渡さずにfieldnamesを呼び出したときは，エラーとなります。
[Built-in Function]
式expr が構造体であり，name という名前の要素を含むときに1 を返します。
最初の引数は構造体，2 番目の引数は文字列でなければなりません。