Языки программирования для численных методов. Глушакова Т.Н - 54 стр.

UptoLike

54
Описание структуры определяет новый тип , ссылаться
на который можно при помощи двух слов struct имя (можно сократить
ссылку на структуру до одного слова при помощи определения синонима
для типа(typedef)).
Типом поля может быть любой, в том числе, и структура. Эта
структура должна быть описана ранее или может быть описана прямо
вместо типа. В этом случае имя структуры можно опустить , но тогда к ней
нельзя будет обратиться нигде, кроме этого поля.
Переменная типа «структура» описывается также как и переменные
любого другого типа:
struct имя имя переменной;
Для работы с такими переменными используется операция (.),
позволяющая получить доступ к полю структуры .
имя переменной . имя поля
Язык С позволяет передавать переменные типа «структура» как
параметры функций и присваивать их друг другу. При этом копируются
значения всех полей .
Правильный размер структуры , как и любого другого типа, можно
узнать через операцию sizeof.
Если параметры или возвращаемое значение функции имеют тип
«структура» , то для использования этой функции вместе с ее прототипом
должно быть доступно и описание самой структуры . Поэтому оно также
обычно помещается в h-файл.
5.2. Объединения
Объединения , как и структуры , описываются как набор полей
разных типов. Отличие в том, что все поля структуры хранят
одновременно свои определенные значения . В объединении все поля
занимают одну и ту же область памяти, т.е. в определенный момент
времени значение только одного поля верно. таким образом, объединение
используется тогда, когда возможен только один из имеющихся вариантов
представления данных. При этом другие, не используемые варианты , не
расходуют лишней памяти. В таких случаях объединения позволяют
экономить память .
Переменные, входящие в состав объединения , называются его
полями. В общем виде описание объединения выглядит так :
                                     54
      Описание       структуры         определяет новый тип, ссылаться
на который можно при помощи двух слов struct имя (можно сократить
ссылку на структуру до одного слова при помощи определения синонима
для типа(typedef)).
      Типом поля может быть любой, в том числе, и структура. Эта
структура должна быть описана ранее или может быть описана прямо
вместо типа. В этом случае имя структуры можно опустить, но тогда к ней
нельзя будет обратиться нигде, кроме этого поля.
      Переменная типа «структура» описывается также как и переменные
любого другого типа:
      struct имя имя переменной;
      Для работы с такими переменными используется операция (.),
позволяющая получить доступ к полю структуры.
      имя переменной . имя поля
      Язык С позволяет передавать переменные типа «структура» как
параметры функций и присваивать их друг другу. При этом копируются
значения всех полей.
      Правильный размер структуры, как и любого другого типа, можно
узнать через операцию sizeof.
      Если параметры или возвращаемое значение функции имеют тип
«структура», то для использования этой функции вместе с ее прототипом
должно быть доступно и описание самой структуры. Поэтому оно также
обычно помещается в h-файл.
5.2. Объединения
      Объединения, как и структуры, описываются как набор полей
разных типов. Отличие в том, что все поля структуры хранят
одновременно свои определенные значения. В объединении все поля
занимают одну и ту же область памяти, т.е. в определенный момент
времени значение только одного поля верно. таким образом, объединение
используется тогда, когда возможен только один из имеющихся вариантов
представления данных. При этом другие, не используемые варианты, не
расходуют лишней памяти. В таких случаях объединения позволяют
экономить память.
     Переменные, входящие в состав объединения, называются его
полями. В общем виде описание объединения выглядит так: