Что вернёт функция g(), если её вызвать в C++?
int h(int *q, int *p) {
*p += 1;
*q += 1;
return *p + *q;
}
int g() {
int a = 2, b = 4;
return h(&a, &a) + h(&b, &b);
}
Ответы
Ответ дал:
0
Эта функция выведет 20.
Сначала мы передаём 2 в функцию h как указатель.
Увеличиваем 2 на один, а потом ещё на один, у нас выходит 4.
Возвращаем 4+4=8.
Потом мы передаём 4 в функция h как указатель.
Увеличиваем 4 на один, а потом ещё на один, у нас выходит 6.
6+6=12.
Ну а потом мы возвращаем сумму наших двоих функций h.
12+8 = 20.
Сначала мы передаём 2 в функцию h как указатель.
Увеличиваем 2 на один, а потом ещё на один, у нас выходит 4.
Возвращаем 4+4=8.
Потом мы передаём 4 в функция h как указатель.
Увеличиваем 4 на один, а потом ещё на один, у нас выходит 6.
6+6=12.
Ну а потом мы возвращаем сумму наших двоих функций h.
12+8 = 20.
Вас заинтересует
2 года назад
2 года назад
3 года назад
3 года назад
9 лет назад
9 лет назад
10 лет назад
10 лет назад