@Rufix

Для чего нужен return?

Возможно, я невероятно глупый человек (хоть я себя таковым и не считаю), но хоть убейте не могу понять, что делает запись "return 0", "return *какая-то переменная*" и т.д.
Смотрю видео-обучение и там человек написал вот такой код
#include <stdio.h>

void print (float number){
    printf ("Your number is %.2f\n", number);
}

float del (float a, float b){
    float res;
    if (b != 0)
        res = a / b;
    else
        res = 0;

        return res;
}

int main (){
    int num1, num2;
    scanf ("%d", &num1);
    scanf ("%d", &num2);
    float result = del (num1, num2);
    print (result);

    return 0;
}

Читал вопросы других людей, и все равно не могу понять. Как я понял, одна из функций записи return - это остановка данной функции (это если написать 0).
Но что делает "return res" во втором куске кода? То есть в переменную res записывается деление числа А и Б. А потом оно куда-то там возвращается.. (Я чайник тот еще, поэтому если можете объяснить, то как можно понятнее). Спасибо.
  • Вопрос задан
  • 7470 просмотров
Решения вопроса 1
mmmaaak
@mmmaaak
а всего-то нужно знать английский уровня 5 класса, return - значит возвращать, несложно догадаться, что эта конструкция указывает на то, что именно функция вернет в результате своей работы, а *res* там или 0 не важно: в случае с С++ главное, чтоб компилятор одобрил это значение на соответствие указанному возвращаемому типу
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
jcmvbkbc
@jcmvbkbc
"I'm here to consult you" © Dogbert
float del (float a, float b)
{
    float res;
    ...
    res = ...;
    ....
    return res;
}
....
float result = del (num1, num2);

что делает "return res" во втором куске кода? То есть в переменную res записывается деление числа А и Б. А потом оно куда-то там возвращается..

Это значение, которое вернётся из функции в точку вызова. В примере выше оно будет присвоено переменной result.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы