.\" -*- coding: UTF-8 -*- '\" t .\" Copyright, the authors of the Linux man-pages project .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH frexp 3 "19 июля 2025 г." "Справочные страницы Linux 6.15" .SH НАИМЕНОВАНИЕ frexp, frexpf, frexpl \- приводит число с плавающей точкой к виду мантисса/степень .SH БИБЛИОТЕКА Математическая библиотека (\fIlibm\fP,\ \fI\-lm\fP) .SH ОБЗОР .nf \fB#include \fP .P \fBdouble frexp(double \fP\fIx\fP\fB, int *\fP\fIe\fP\fB);\fP \fBfloat frexpf(float \fP\fIx\fP\fB, int *\fP\fIe\fP\fB);\fP \fBlong double frexpl(long double \fP\fIx\fP\fB, int *\fP\fIe\fP\fB);\fP .fi .P .RS -4 Требования макроса тестирования свойств для glibc (см. \fBfeature_test_macros\fP(7)): .RE .P \fBfrexpf\fP(), \fBfrexpl\fP(): .nf _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L || /* начиная с glibc 2.19: */ _DEFAULT_SOURCE || /* Glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE .fi .SH ОПИСАНИЕ These functions are used to split the number \fIx\fP into a normalized fraction and an exponent which is stored in \fIe\fP. .SH "ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ" Эти функции возвращают нормализованную мантиссу. Если аргумент \fIx\fP не равен нулю, то нормализованная мантисса равна \fIx\fP степеням двойки, а её абсолютное значение всегда находится в диапазоне от 1/2 (включительно) до 1 (не включая), то есть [0.5,1). .P If \fIx\fP is zero, then the normalized fraction is zero and zero is stored in \fIe\fP. .P If \fIx\fP is a NaN, a NaN is returned, and the value of \fI*e\fP is unspecified. .P If \fIx\fP is positive infinity (negative infinity), positive infinity (negative infinity) is returned, and the value of \fI*e\fP is unspecified. .SH ОШИБКИ Ошибки не возникают. .SH АТРИБУТЫ Описание терминов данного раздела смотрите в \fBattributes\fP(7). .TS allbox; lbx lb lb l l l. Интерфейс Атрибут Значение T{ .na .nh \fBfrexp\fP(), \fBfrexpf\fP(), \fBfrexpl\fP() T} Безвредность в нитях MT\-Safe .TE .SH СТАНДАРТЫ C11, POSIX.1\-2008. .SH ИСТОРИЯ C99, POSIX.1\-2001. .P Вариант, возвращающий значение типа \fIdouble\fP, также соответствует SVr4, 4.3BSD, C89. .SH ПРИМЕРЫ Нижеследующая программа выдает такие результаты: .P .in +4n .EX $\fB ./a.out 2560\fP frexp(2560, &e) = 0.625: 0.625 * 2\[ha]12 = 2560 $\fB ./a.out \-4\fP frexp(\-4, &e) = \-0.5: \-0.5 * 2\[ha]3 = \-4 .EE .in .SS "Исходный код программы" .\" SRC BEGIN (frexp.c) \& .EX #include #include #include #include \& int main(int argc, char *argv[]) { double x, r; int e; \& x = strtod(argv[1], NULL); r = frexp(x, &e); \& printf("frexp(%g, &e) = %g: %g * %d\[ha]%d = %g\[rs]n", x, r, r, 2, e, x); exit(EXIT_SUCCESS); } .EE .\" SRC END .SH "СМОТРИТЕ ТАКЖЕ" \fBldexp\fP(3), \fBmodf\fP(3) .PP .SH ПЕРЕВОД Русский перевод этой страницы руководства разработал(и) Azamat Hackimov , Dmitry Bolkhovskikh , Yuri Kozlov , Иван Павлов и Kirill Rekhov . .PP Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, .UR https://www.gnu.org/licenses/gpl-3.0.html .UE версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ. .PP Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу .MT списка рассылки русских переводчиков .ME .