7. Массивы структур.
Функциям в качестве
аргумента можно также передавать массивы
структур. Для этого используется
следующее определение:
void show_struct(struct
people mans[], int size);
Здесь size – число
элементов массива, которое необходимо
для корректного считывания информации
массива mans. Следующий пример показывает
принцип работы с массивами структур.
Листинг 3.9. Передача
массив структур функции.
#include
#define N 2
struct tag_people {
char name[100];
char job[100];
int old;
};
void show_struct(struct
people mans[], int size);
int main()
{
struct people persons[N] =
{
{ “Иванов”,
«Электрик», 35 },
{ “Петров”,
«Преподаватель», 50 },
};
show_struct(persons, N);
}
void show_struct(struct
people mans[], int size)
{
for(int i = 0;i <
size;i++) {
printf(“Имя:
%s\n”,mans[i].name);
printf(“Профессия:
%s\n”,mans[i].job);
printf(“Возраст:
%d\n”,mans[i].old);
}
}
При передаче
аргумента persons выполняется копирование
информации в массив mans и указывается
дополнительный параметр size, для
определения числа элементов массива
mans. Затем в функции show_struct() реализуется
цикл, в котором выполняется отображение
информации массива структуры на экран
монитора.