Алгоритмы и структуры данных на С++. Аксёнова Е.А - 19 стр.

UptoLike

1.5. Передача структур в качестве параметров функции 19
{
c -> re = a->re + b->re;
c -> im = a->im + b->im;
}
Четвертый способ
В примере все параметры передаются по ссылке на структуру.
#include <stdio.h>
struct complex{float re; float im;};
void sum(complex&, complex&, complex&);
int main()
{
complex z, x={1.4, 2.5}, y={2.6, 3.1};
sum(x, y, z);
printf("re=%f im=%f", z.re, z.im);
}
void sum(complex& a, complex& b, complex& c)
{
c.re = a.re + b.re;
c.im = a.im + b.im;
}
Пятый способ
Этот вариант отличается от предыдущего тем, что сумма возвра-
щается через значение функции, а не как параметр. Входные пара-
метры передаются по значению.
#include <stdio.h>
struct complex{float re; float im;};
complex sum(complex, complex);
int main()
{
complex z, x={1.4, 2.5}, y={2.6, 3.1};
z=sum(x,y);
printf("re=%f im=%f", z.re, z.im);} // вывод
}
1.5.   Передача структур в качестве параметров функции          19


  {
       c -> re = a->re + b->re;
       c -> im = a->im + b->im;
  }

   Четвертый способ
   В примере все параметры передаются по ссылке на структуру.

#include 
struct complex{float re; float im;};
void sum(complex&, complex&, complex&);

int main()
  {
     complex z, x={1.4, 2.5}, y={2.6, 3.1};
     sum(x, y, z);
     printf("re=%f im=%f", z.re, z.im);
  }

void sum(complex& a, complex& b, complex& c)
  {
     c.re = a.re + b.re;
     c.im = a.im + b.im;
  }

   Пятый способ
   Этот вариант отличается от предыдущего тем, что сумма возвра-
щается через значение функции, а не как параметр. Входные пара-
метры передаются по значению.

#include 
struct complex{float re; float im;};
complex sum(complex, complex);

int main()
  {
    complex z, x={1.4, 2.5}, y={2.6, 3.1};
    z=sum(x,y);
    printf("re=%f im=%f", z.re, z.im);} // вывод
  }