#c
Вопрос:
#include <iostream>
// **Change needs_it_support so that it returns support:**
bool needs_it_support() {
bool support;
std::cout << "Hello. IT. Have you tried turning it off and on again? Enter 1 for yes, 0 for no.n";
std::cin >> support;
return support;
}
int main() {
// **Change the following line to print the function result:**
needs_it_support(); **calling function**
}
Но ничего не распечатывается, я просто нажимаю 1 или 0, и мне ничего не возвращают обратно
Комментарии:
1. Функция возвращает результат. Вы игнорируете результат.
2. » Измените следующую строку для печати результата функции: » в следующей строке нет кода для печати возвращаемого значения
3. в какой части кода вы ожидали напечатать значение
support
? Не путайте печать чего-либо на экране и возврат чего-либо из функции, это две совершенно разные вещи4. Одна из проблем с комментариями к коду заключается в том, что их читают очень немногие. Не будь таким человеком.
Ответ №1:
вы должны распечатать результат после возврата из функции, в этом случае вы должны поместить что-то вроде этого :
std::cout << needs_it_support() << std::endl;
или:
bool result = needs_it_support();
std::cout << result << std::endl;
Комментарии:
1. но я немного смущен, потому что что именно делает std::cout < он все еще просто выполняет весь код? и если да, то почему он не повторяет все выходные данные снова?
2. @juicywrldy
std::cout << needs_it_support() << std::endl;
этот код сначала выполняет функцию needs_it_support, затем результат будет возвращен из этой функции, после чего результат будет введен для ostream(что в данном случаеstd::cout
), а затем он будет напечатан.да, если вы запуститеstd::cout << needs_it_support() << std::endl;
, он выполнит всеneeds_it_support
.