構造体を定義する方法に "typedef" という命令を使う方法もあります。この方法は構造体に限らず既に定義済みの型に別の名前を定義するときに利用します。
例えば整数型 "int" を "seisu" という名前で定義したいときには次のようにします。このように定義しておくとtypedef int seisu;で変数 "num" を定義したときseisu num;のように定義したときのように変数 "num" が整数型として利用できます。int num;
"typedef" を使うことで構造体も型として定義することができます。この節の始めに定義したアドレス帳のデータの構造体を "typedef" を使って定義し、変数 "pd_a"、"pd_b" を定義すると次のようになります。このようにすると構造体の変数を定義するときにtypedef struct personal_tag { /* 個人タグ */ char name[10]; /* 名前 */ char address[20]; /* 住所 */ double phone; /* 電話番号 */ } personal_t; /* 個人の型定義 */ personal_t pd_a, pd_b; /* 個人の型の変数の定義 */としていましたが、struct <構造体タグ> <変数名>で定義できるようになります。ただし注意しなければいけないのは型を定義するときに型の名前は構造体タグではなく構造体のメンバを定義した後につける名前になります。<構造体の型名> <変数名>