Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Структура может быть и параметром функции и возвращаемым функцией значением. Кроме того, в обоих случаях могут использоваться указатели на объекты структурного типа, а так же отдельные элементы структуры.
Рассмотрим все перечисленные варианты для случая:
struct person {char name[10]; int age;} str;
Ø функция возвращает структуру как результат: struct person fun (int N);
Ø функция возвращает указатель на структуру: struct person * fun (void);
Ø параметр функции – структура: void fun (struct person str);
Ø параметр функции – указатель на структуру: void fun (struct person*ptrr);
Ø параметр функции – элемент структуры: void fun (int str.age);
Ø параметр функции – указатель на элемент структуры: void fun (char *str.name);
Пример использования указателя на структуру в качестве аргумента функции.
struc books { char name[20];
char title[40];
int year;
float price; };
void exemple(struc books *ptr);
main()
{ struc books ret;
exemple(&ret);
printf("%-20s %-20s Год изд. %d, Цена - %5.2 f руб.\n", ret.name, ret.titel, ret.year,ret.price);
}
void exemple(struc books *ptr)
{ strcpy(ptr->name, “Толстой Л.Н.“);
strcpy(ptr->title, “Крейцерова соната“);
ptr->year=2010;
ptr->price=145.99;
}
Результат: Толстой Л.Н. Крейцерова соната Год изд. 2010, Цена – 145.99 руб.
Дата публикования: 2015-02-22; Прочитано: 151 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!