bullitufa
@bullitufa
электронщик программист (микроконтроллеры и PC)

Как писать и обрабатывать функции с несколькими вариантами результата?

Добрый день!

Задача: необходимо сделать несколько проверок нескольких параметров. И в зависимости от результата выполнить соответствующие действия. Возможных результатов проверок скажем N и соответственно N действий.
Сейчас код (функция проверки) на си имеет несколько return result, где return 0 - всё хорошо, return 1..(N-1) - типы провалов проверок. Параметры в функции проверяются поочерёдно (вложенные if-ы) и результат проверки на истине и лжи свои. Проверки умещаются в один if.
Результат функции обрабатывается switch-ем.
Для удобства тип возвращаемого результата функции имеет тип enum, но это не важно.

Но мне этот подход (использование switch и несколько результатов) почему-то не нравится! Наверное потому что привык результат функции либо 0 - всё хорошо, либо !0 - значит плохо.

Внимание вопрос: нормальный ли такой подход обработки результатов функции? Может ли быть другой "красивый" подход к решению этой задачи?

Конечная цель вопроса писать красивый код))
  • Вопрос задан
  • 204 просмотра
Пригласить эксперта
Ответы на вопрос 1
bullitufa
@bullitufa Автор вопроса
электронщик программист (микроконтроллеры и PC)
И еще вопрос: стоит ли использовать enum как возврат функции? Помоему результат куда читабельней скажем RES_OK, чем 0!
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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