取り得る値が決まっているデータ型を作るためには enum を使います。
たとえば「性別」のように「男」か「女」のどちらかが表現できればよく、それ以外の情報は入らないようなデータ型を作りたい場合は enum を使って次のように書きます。
typedef enum { Male, Female } Sex;
この場合、新しくできたデータ型は Sex という名前で、取り得る値は Male か Female のどちらかになります。このようにして作った新しいデータ型を列挙型と呼びます。実際にこのデータ型を使う場合は普通の変数と同じように宣言するだけです。
// 宣言と初期化 Sex var = Male; // 後から変えることもできる var = Female;
列挙型の取り得る値は文字列ではないのでダブルクォーテーションは必要ありません。
Contributions