Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Сравнение параметров ссылочного типа и параметров - значений



Что будет выведено?

void fun1(int a, int &b, int &c) { int d; a=…; b=…; c=…; d=…;

/* Вместо многоточиячисла или выражения */

cout<<a%c<<" "<<(b / d)<<endl; }

int main()

{ int u=…, v=…, w=…, z=…;

/* Вместо многоточия числа или выражения*/ fun1(u,v,w);

cout<<u<<" "<<v<<" "<<(w + z)<<endl;

getch(); return 0; }

Заголовок функции может быть другим, зависит от того, какие параметры объявлены со ссылочным типом:

void fun1(int a, int b, int &c)

// или void fun1(int &a, int &b, int c) и т.п.

7. Сравнение функций типа void и отличных от типа void.

Пусть описаны функции

void FVoid (int x, int y, int &r) { r=x+y; }

int FInt (int x, int y, int &r) { r=x-y; return x/y; }

Укажите номера строк, в которых правильные вызовы функций. Что будет выведено для правильных вызовов?

int main() { int R;

if (FVoid (12, 12, R)) //1

cout<<" Yes "<<R; else cout<<" No "<<R;

if (FInt (14, 12, R)) //2

cout<<" Yes "<<R; else cout<<" No "<<R;

FVoid (12, 12, R); //3

R? cout<<" Yes ": cout<<" No "; cout<<R;

FInt (4, 14, R); cout<<" "<<R<<" "; //4

int RES=0, x=12; RES= FVoid (x, 12, 3); //5

RES? cout<<"Yes": cout<<"No"; cout<<RES;

RES=0; x=12; RES= FInt (x, 12, 3); //6

RES? cout<<"Yes": cout<<"No"; cout<<RES;

getch(); return 0; }

В других более простых вариантах функции Fint записано return r; т. е. одно и то же выражение получается и с помощью переменной, и возвращается с помощью return.

В тексте функции может быть более сложное логическое выражение или использоваться другие операции (см. упражнения и тесты гл.1).





Дата публикования: 2015-02-18; Прочитано: 166 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...