Например, бывает функция с void и она не возвращает значения, но в теле функции есть операторы которые что то возвращают... Как это понять?
Тот же alert в JS например не возвращает значения, но он же выводит строку в браузер...
Мой мозг с 0.001 iq не хочет понимать... Объясните пж
Возвращение значений - это запись в специальную область памяти при завершении функции. Есть функции которые работают с указателями - сразу записывают данные в область памяти, назначенную для переменной. Такие функции могут быть void.
Если функция возвращает значение, то оно подставляется в формулу вызова: x := sin(a) + b;
Неважно, сколько параметров у функции sin(), может, они что-то тоже "возвращают", но основное значение будет подставлено в формулу: x := Result + b
Возврат - это когда функция возвращает управление в функцию, которая она вызвала.
Возврат значение - это когда вызывающей функции ещё какой-то результат отдали.
В таком случае alert не возвращает значение (только создаёт то самое всплывающее окно), а вот например prompt возвращает.