Учимся программировать на языке C++

         

СТРУКТУРЫ И ФУНКЦИИ


Если функция не изменяет структуру, вы можете передать структуру в функцию по имени. Например, следующая программа SHOW_EMP.CPP использует функцию show_employee для вывода элементов структуры типа employee:

#include iostream.h

#include string.h

struct employee

{

char name[64];

long employee_id;

float salary;

char phone[10];

int office_number;

};

void show_employee(employee worker)

{

cout "Служащий: " worker.name endl;

cout "Телефон: " worker.phone endl;

cout "Номер служащего: " worker. employee_id endl;



cout "Оклад: " worker.salary endl;

cout "Офис: " worker.office_number endl;

}

void main(void)

{

employee worker;

// Копировать имя в строку strcpy(worker.name, "Джон Дой");

worker.employee_id = 12345;

worker.salary = 25000.00;

worker.office_number = 102;

// Копировать номер телефона в строку strcpy(worker.phone, "555-1212");

show_employee(worker);

}

Как видите, программа передает переменную типа данной структуры worker в функцию show__employee по имени. Далее функция show_employee выводит элементы структуры. Однако обратите внимание, что программа теперь определяет структуру employee вне main и до функции show_employee. Поскольку функция объявляет переменную worker типа employee, определение структуры employee должно располагаться до функции.



Содержание раздела