typedefは型に新しい名前を付けるためのキーワードであり、構造体タグは構造体を識別するための名前です。 typedefを使用すると、構造体を宣言する際にstructキーワードを省略できますが、構造体タグはstructキーワードとともに使用されます。 たとえば、typedef struct { int x; } Point;と定義すると、Pointという名前で構造体を使用できますが、構造体タグを使う場合はstruct Pointと記述する必要があります。