Определение структуры, как правило, не является частью двоичного файла в C. Оно существует только в вашем исходном коде.
Когда компилятор видит ссылки на вашу структуру (как правило, для выделения или освобождения пространства для экземпляра этой структуры, доступа к ее полям через переменную объекта и т. Д.), Он консультируется с вашим определением структуры, чтобы понять, что правильные номера для этого типа данных (в основном он хочет рассчитать размеры типа данных и смещения полей).
Когда все это будет сделано, само определение структуры будет забыто, и в программе будут храниться только номера, где бы они ни были использованы.
Поэтому, если вы вообще не ссылаетесь на свою структуру, то никаких следов ее не должно присутствовать.
Нет (просто подумайте, что это значит), но я не уверен, что это действительно так. –
В какой памяти? Извините за педантичность, но ваша скомпилированная программа занимает некоторую память, а исходный код также занимает память – AlexT
@AlexT: Я хочу сказать, что, когда я объявляю «структуру», не создавая никакого объекта «ОБЪЕКТ», он резервирует пространство для своего ' члены данных?? –