Программирование на C и C++

Онлайн справочник программиста на C и C++

Математические функции

Стандарт ANSI С определяет 22 математические функции, которые подразделяются на следую­щие категории:

  • Тригонометрические функции
  • Гиперболические функции
  • Экспоненциальные и логарифмические функции
  • Разные функции

Borland реализует все эти функции, а также добавляет несколько собственных. Многие функ­ции, добавленные корпорацией Borland, являются версиями стандартных функций для данных типа long double. Эти функции также обсуждаются ниже.

Для использования математических функций необходимо включить заголовочный файл math.h. В дополнение к объявлению математических функций этот заголовочный файл определяет также три макроса EDOM, ERANGE, HUGE_VAL. Если аргумент математической функции выходит за пределы значений, для которых она определена, то глобальная переменная errno устанавливается равной EDOM, а функция возвращает величину, зависящую от реализации. Если в результате вы­полнения процедуры результат оказывается слишком большим для представления, то возникает пе­реполнение. В результате функция возвращает HUGE_VAL, а переменная errno устанавливается равной ERANGE, указывая тем самым на ошибку, связанную с выходом за допустимую область значений. (Если функция возвращает long double, то при переполнении возвращается _LHUGE_VAL.) Если же возникает потеря значимости, то есть получается результат, который меньше минимально представимого числа, то функция возвращает ноль, а переменная errno устанавливается равной ERANGE