Provided by: manpages-ru-dev_4.18.1-1_all
ИМЯ
logb, logbf, logbl - получение целочисленной экспоненты значения числа с плавающей запятой
LIBRARY
Math library (libm, -lm)
СИНТАКСИС
#include <math.h> int ilogb(double x); int ilogbf(float x); int ilogbl(long double x); Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)): ilogb(): _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 500 || /* начиная с glibc 2.19: */ _DEFAULT_SOURCE || /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE ilogbf(), ilogbl(): _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L || /* начиная с glibc 2.19: */ _DEFAULT_SOURCE || /* Glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE
ОПИСАНИЕ
Данные функции возвращают экспоненту своих аргументов в виде целого числа со знаком. При отсутствии ошибок они эквивалентны соответствующим функциям logb(3), значение которых приведено к int.
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
При успешном выполнении эти функции возвращают экспоненту от x в виде целого числа со знаком. Если x равно нулю, то будет сгенерирована ошибка выхода за пределы области, а в качестве результата будет возвращено FP_ILOGB0. Если x равно NaN, то будет сгенерирована ошибка выхода за пределы области, а в качестве результата будет возвращено FP_ILOGBNAN. Если x равно отрицательной или положительной бесконечности, то будет сгенерирована ошибка выхода за пределы области, а в качестве результата будет возвращено INT_MAX.
ОШИБКИ
Смотрите math_error(7), чтобы определить, какие ошибки могут возникать при вызове этих функций. Могут возникать следующие ошибки: Ошибка области: x равно 0 или NaN Вызывается исключение неправильной плавающей запятой (FE_INVALID)) и errno устанавливается в EDOM (но смотрите ДЕФЕКТЫ). Ошибка области: x стремится к бесконечности Вызывается исключение неправильной плавающей запятой (FE_INVALID)) и errno устанавливается в EDOM (но смотрите ДЕФЕКТЫ).
АТРИБУТЫ
Описание терминов данного раздела смотрите в attributes(7). ┌───────────────────────────────────────────────────────┬──────────────────────┬──────────┐ │Интерфейс │ Атрибут │ Значение │ ├───────────────────────────────────────────────────────┼──────────────────────┼──────────┤ │ilogb(), ilogbf(), ilogbl() │ Безвредность в нитях │ MT-Safe │ └───────────────────────────────────────────────────────┴──────────────────────┴──────────┘
СТАНДАРТЫ
C99, POSIX.1-2001, POSIX.1-2008.
ДЕФЕКТЫ
Before glibc 2.16, the following bugs existed in the glibc implementation of these functions: • При ошибке области, когда x равно 0 или NaN, не изменялось значение errno или (на некоторых архитектурах) не возникало исключение неправильной плавающей запятой. • При ошибке области, когда x равно бесконечности, не изменялось значение errno или не возникало исключение неправильной плавающей запятой.
СМ. ТАКЖЕ
log(3), logb(3), significand(3)
ПЕРЕВОД
Русский перевод этой страницы руководства был сделан Azamat Hackimov <azamat.hackimov@gmail.com>, Dmitriy S. Seregin <dseregin@59.ru>, Yuri Kozlov <yuray@komyakino.ru> и Иван Павлов <pavia00@gmail.com> Этот перевод является бесплатной документацией; прочитайте Стандартную общественную лицензию GNU версии 3 ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ. Если вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо на ⟨man-pages-ru-talks@lists.sourceforge.net⟩.