ВУЗ:
Составители:
Рубрика:
25
Указатели на структуры и объединения
Для доступа к элементам структурных переменных или объединений через
указатель используется специальная операция ->.
Пример:
struct Student Gruppa [25];
struct Student *Ptr= &(Gruppa[5]);
. . .
printf ("\n ФИО: %-30s \n Шифр: %-9s \n Год рождения:%4d",
Ptr->FIO, Ptr->ID_Cod, Ptr->BirthYear);
Обращение Ptr->FIO есть синоним (*Ptr).FIO.
Передача структур и объединений в функции и их возврат из функций
В классическом варианте языка Си передача структуры
в функцию
осуществлялась только через указатель на структуру, возврат значений
осуществлялся также через указатель.
В современных реализациях языка Си допустимо передавать структуру в
качестве аргумента функции и возвращать ее.
Пример:
struct s func (struct s arg);
Спецификатор typedef
Спецификатор typedef позволяет задавать символические имена типов данных.
Описание символических имен похоже на описание переменных: сначала
указывается тип,
а затем его метка.
Typedef напоминает директиву препроцессора #define, но имеются следующие
отличия:
- typedef дает символические имена только типам данных;
- typedef выполняется компилятором, а не препроцессором.
Область действия определения, данного с помощью typedef, зависит от его
расположения. Если определение было дано внутри функции, то область действия
локальна и ограничивается этой
функцией. Если определение расположено вне
функции, то область действия - глобальная.
Примеры использования typedef:
typedef float * FPTR;
typedef unsigned char BYTE;
25
Указатели на структуры и объединения
Для доступа к элементам структурных переменных или объединений через
указатель используется специальная операция ->.
Пример:
struct Student Gruppa [25];
struct Student *Ptr= &(Gruppa[5]);
. . .
printf ("\n ФИО: %-30s \n Шифр: %-9s \n Год рождения:%4d",
Ptr->FIO, Ptr->ID_Cod, Ptr->BirthYear);
Обращение Ptr->FIO есть синоним (*Ptr).FIO.
Передача структур и объединений в функции и их возврат из функций
В классическом варианте языка Си передача структуры в функцию
осуществлялась только через указатель на структуру, возврат значений
осуществлялся также через указатель.
В современных реализациях языка Си допустимо передавать структуру в
качестве аргумента функции и возвращать ее.
Пример:
struct s func (struct s arg);
Спецификатор typedef
Спецификатор typedef позволяет задавать символические имена типов данных.
Описание символических имен похоже на описание переменных: сначала
указывается тип, а затем его метка.
Typedef напоминает директиву препроцессора #define, но имеются следующие
отличия:
- typedef дает символические имена только типам данных;
- typedef выполняется компилятором, а не препроцессором.
Область действия определения, данного с помощью typedef, зависит от его
расположения. Если определение было дано внутри функции, то область действия
локальна и ограничивается этой функцией. Если определение расположено вне
функции, то область действия - глобальная.
Примеры использования typedef:
typedef float * FPTR;
typedef unsigned char BYTE;
Страницы
- « первая
- ‹ предыдущая
- …
- 23
- 24
- 25
- 26
- 27
- …
- следующая ›
- последняя »
