.\" -*- coding: UTF-8 -*- '\" t .\" Copyright 2001 Andries Brouwer . .\" and Copyright 2008, Linux Foundation, written by Michael Kerrisk .\" .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH rint 3 "16 июня 2024 г." "Справочные страницы Linux 6.9.1" .SH НАИМЕНОВАНИЕ nearbyint, nearbyintf, nearbyintl, rint, rintf, rintl \- округление до ближайшего целого .SH БИБЛИОТЕКА Математическая библиотека (\fIlibm\fP, \fI\-lm\fP) .SH ОБЗОР .nf \fB#include \fP .P \fBdouble nearbyint(double \fP\fIx\fP\fB);\fP \fBfloat nearbyintf(float \fP\fIx\fP\fB);\fP \fBlong double nearbyintl(long double \fP\fIx\fP\fB);\fP .P \fBdouble rint(double \fP\fIx\fP\fB);\fP \fBfloat rintf(float \fP\fIx\fP\fB);\fP \fBlong double rintl(long double \fP\fIx\fP\fB);\fP .fi .P .RS -4 Требования макроса тестирования свойств для glibc (см. \fBfeature_test_macros\fP(7)): .RE .P \fBnearbyint\fP(), \fBnearbyintf\fP(), \fBnearbyintl\fP(): .nf _POSIX_C_SOURCE >= 200112L || _ISOC99_SOURCE .fi .P \fBrint\fP(): .nf .\" || _XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 500 || /* начиная с glibc 2.19: */ _DEFAULT_SOURCE || /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE .fi .P \fBrintf\fP(), \fBrintl\fP(): .nf _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L || /* начиная с glibc 2.19: */ _DEFAULT_SOURCE || /* Glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE .fi .SH ОПИСАНИЕ Функции \fBnearbyint\fP(), \fBnearbyintf\fP() и \fBnearbyintl\fP() округляют переданный аргумент до целого значения в формате с плавающей запятой в соответствии с текущим направлением округления (смотрите \fBfesetround\fP(3)) и не генерируют исключение о \fIнеточности\fP. Когда текущее округление направлено к ближайшему целому, то в случае нахождения посереди между значениями эти функции округляют до чётного целого, в соответствии с IEEE\-754. .P Функции \fBrint\fP(), \fBrintf\fP() и \fBrintl\fP() делают то же самое, но генерируют исключение о \fIнеточности\fP (\fBFE_INEXACT\fP, проверяется с помощью \fBfetestexcept\fP(3)), если результат отличается в значении от аргумента. .SH "ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ" Данные функции возвращают округлённое целое число. .P Если \fIx\fP целое, +0, \-0, NaN или стремится к бесконечности, то будет возвращено значение \fIx\fP. .SH ОШИБКИ Ошибки не возникают. .SH АТРИБУТЫ Описание терминов данного раздела смотрите в \fBattributes\fP(7). .TS allbox; lbx lb lb l l l. Интерфейс Атрибут Значение T{ .na .nh \fBnearbyint\fP(), \fBnearbyintf\fP(), \fBnearbyintl\fP(), \fBrint\fP(), \fBrintf\fP(), \fBrintl\fP() T} Безвредность в нитях MT\-Safe .TE .SH СТАНДАРТЫ C11, POSIX.1\-2008. .SH ИСТОРИЯ C99, POSIX.1\-2001. .P В SUSv2 и POSIX.1\-2001 есть текст о переполнении (которое может установить \fIerrno\fP в \fBERANGE\fP или вызвать исключение \fBFE_OVERFLOW\fP). На практике, результат не может выйти за диапазон ни на каком компьютере, поэтому обработка этой ошибки не имела смысла (точнее говоря, переполнение возможно только в том случае, когда максимальное значение экспоненты меньше числа бит мантиссы. В стандарте IEEE\-754 для 32\- и 64\-битных чисел с плавающей точкой максимальное значение экспоненты равно 127 и 1023 соответственно, а число бит мантиссы — 24 и 53 соответственно). .P Если вы хотите сохранить округлённое значение в целочисленном типе, то лучше использовать одну из функций, описанных в \fBlrint\fP(3). .SH "СМОТРИТЕ ТАКЖЕ" \fBceil\fP(3), \fBfloor\fP(3), \fBlrint\fP(3), \fBround\fP(3), \fBtrunc\fP(3) .PP .SH ПЕРЕВОД Русский перевод этой страницы руководства разработал(и) aereiae , Azamat Hackimov , Dmitriy S. Seregin , Katrin Kutepova , Lockal , 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 .