Когда вы typedef
структура, вам больше не нужно использовать ключевое слово struct
.
Итак, используя определения выше, вы теперь можете определить данные как:
struct scuba joe; // here using "struct"
joe.name = "Joe Carver";
joe.kit.tank_capacity = 30.0;
joe.kit.tank_psi = 70;
joe.kit.suit_material = "neoprene";
и
diver jane; // here not using "struct"
jane.name = "Jane Smith";
jane.kit.tank_capacity = 25.0;
jane.kit.tank_psi = 75;
jane.kit.suit_material = "kevlar";
typedef
просто позволяет использовать более короткую запись.Но оба joe
и jane
считаются одного типа.
Редактировать: Что касается equipment kit
, то это "структура в структуре".При использовании этого подхода данные водителя акваланга, описывающие его оборудование, группируются.Это позволяет улучшить организацию кода и данных и считается наилучшей практикой.