Вы должны иметь возможность просто создать отдельный файл для каждой структуры или каждой группы связанных структур (я рекомендую один для каждой структуры, но иногда это становится утомительным - если вы группируете их, обязательно назовите его продуманно).
Если проект достаточно велик, чтобы иметь «области», как вы их называете, то, вероятно, было бы разумно ввести одно или несколько пространств имен для структур, которые соответствующим образом их описывают. Это предотвратит конфликты имен и даст вашим клиентам, использующим код, возможность вспомнить, что и где. Необходимость уточнять имена иногда может показаться болезненной, но это важно в больших проектах и в конечном итоге помогает.
Наконец, большинство крупных проектов имеют общую папку в каталоге высокого уровня или в месте, где определены их интерфейсы сообщений. Это важно, чтобы каждый мог понять, что местоположение содержит структуры данных, которые должны использоваться всеми для сохранения ясного, согласованного интерфейса, чтобы избежать необходимости в большом количестве кода преобразования, который может быть трудоемким и дорогостоящим (и, как правило, в конечном итоге тоже копируется!) ).