Ошибка non-void function does not return a value in all control paths

Итак, та самая non-void function у меня следующая:

int find_length (long card_num)
{
    int len;
    for (len = 0; card_num > 0; card_num / 10, len++)
    return len;
}

Вроде прошу же вывести переменную len, а она int, и функция у меня int... Что не так? В каких там путях моя функция не выдает значение?


Ответы (1 шт):

Автор решения: Qwertiy

Твоя функция эквивалента такой:

int find_length(long card_num)
{
  if (card_num > 0) return 0;
}

Очевидно, что для остальных случаев return отсутствует.

→ Ссылка