もしかしたら長らく勘違いしていたかもしれないこと。
Cの場合
Cでは構造体を定義するのに以下のように書く。
struct data_t { int num1; int num2 };
この構造体の変数を宣言するときには以下のように書く。
struct data_t d;
でも毎回struct data_tって書くのはめんどくさいってことで、typedefを使うことが多い。
struct _data_t { int num1; int num2 } data_t;
こうすると、構造体の変数の宣言が簡単に書けるようになる。
data_t d;