Просматривала видеокурс C# Essential (кстати советую, очень познавательный курс для начинающих), где Александр Шевчук на одном из своих видеоуроков раскрыл тему структур и их разновидностей в контексте языка C#, что с ними можно делать, чего делать нельзя и так далее. Впринципе тема с классами в C# ясна и понятна, особых сложностей она не вызывает.
Сейчас понемногу изучаю язык С , и вот недавно узнала, что структуры в С представляют собой нечто совершенно иное чем в вышеупомянутом С#. Мол там отсутствуют определённые ограничения, да и вообще сравнение класса и структуры в С абсолютным образом отличается от сравнения классов и структур в C#.
Отсюда следующие вопросы:
1. Чем структура в C предметно отличается от структуры в C#? Только по сути, без учёта синтаксиса или каких-то очевидных особенностей языков.
2. Сравните пожалуйста класс и структуру в языке C .
3. Если структуры в С действительно не имеют таких ограничений как в С#, то зачем собственно они были введены, эти ограничения? Почему бы не оставить всё как есть?