構造体(structure)は互いに関連する2つ以上の変数で構成される複合型。構造体の持つ変数をメンバと呼び、それぞれのメンバは異なる型でも構わない。構造体を定義するときの一般的な形式は次のとおり。変数リスト;タグ名は構造体につける名前だ。いってみれば型名のようなもの。変数リストは、定義したい変数のリスト。タグ名と変数リストは、どちらかは省略できる。タグ名を省略すると、名前のない構造体の変数を定義することになる。変数リストを省略すると、タグ名のついて構造体だけの定義となって、実際に変数を使うときにはあとから改めて宣言する必要がある。普通はタグ名だけつけていおいて、変数はあとで宣言するのがいいんではないかな。いうタグ名の構造体を定義して、あとからその変数を宣言している。var3;構造体を配列にすることもできる。cat[100];配列の個々の構造体にアクセスするには、配列名に添字をつける。cat[4]構造体のメンバにアクセスするには、ドット演算子を使う。これは、メンバを参照するときもメンバに代入するときも同じ。構造体が配列になっている場合も同じ。2;構造体を関数に渡すこともできるし、関数の戻り値とすることもできる。両方の方が同じなら、構造体の変数(インスタンス)を別の変数にそのまま代入することもできる。これはちょっと試してみよう。メンバの値を変更してみる。