Man page - rint(3)

Packages contains this manual

Available languages:

en fr pt_BR es pl ja ru ro de

Manual

RINT

名 前
書 式
説 明
返 り 値
エ ラ ー
属 性
準 拠
注 意
関 連 項 目
こ の 文 書 に つ い て

名 前

nearbyint, nearbyintf, nearbyintl, rint, rintf, rintl - 最 も 近 い 整 数 に 丸 め る

書 式

#include <math.h>

double nearbyint(double x );
float nearbyintf(float
x );
long double nearbyintl(long double
x );

double rint(double x );
float rintf(float
x );
long double rintl(long double
x );

-lm で リ ン ク す る 。

glibc 向 け の 機 能 検 査 マ ク ロ の 要 件 ( feature_test_macros (7) 参 照 ):

nearbyint (), nearbyintf (), nearbyintl ():

_POSIX_C_SOURCE >= 200112L || _ISOC99_SOURCE

rint ():

_ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
|| _XOPEN_SOURCE >= 500
|| /* Since glibc 2.19: */ _DEFAULT_SOURCE
|| /* Glibc versions <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE

rintf (), rintl ():

_ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
|| /* Since glibc 2.19: */ _DEFAULT_SOURCE
|| /* Glibc versions <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE

説 明

The nearbyint (), nearbyintf (), and nearbyintl () functions round their argument to an integer value in floating-point format, using the current rounding direction (see fesetround (3)) and without raising the inexact exception. When the current rounding direction is to nearest, these functions round halfway cases to the even integer in accordance with IEEE-754.

関 数 rint (), rintf (), and rintl () も 同 じ よ う な 動 作 を す る が 、 結 果 が 引 数 と 異 な る 場 合 に inexact 例 外 ( FE_INEXACT ) を 出 す (こ の 例 外 は fetestexcept (3) 経 由 で 確 認 可 能 )。

返 り 値

こ れ ら の 関 数 は 丸 め た 整 数 値 を 返 す 。

x が 整 数 、 +0、 -0、 NaN、 無 限 の い ず れ か の 場 合 、 x そ の も の が 返 さ れ る 。

エ ラ ー

エ ラ ー は 発 生 し な い 。 POSIX.1-2001 に は オ ー バ ー フ ロ ー で の 範 囲 エ ラ ー (range error) の 記 載 が あ る 。 「 注 意 」 の 節 を 参 照 の こ と 。

属 性

こ の 節 で 使 用 さ れ て い る 用 語 の 説 明 に つ い て は 、 attributes (7) を 参 照 。

Image grohtml-19924-1.png

準 拠

C99, POSIX.1-2001, POSIX.1-2008.

注 意

SUSv2 と POSIX.1-2001 に は オ ー バ ー フ ロ ー に 関 す る 記 述 が あ り 、 オ ー バ ー フ ロ ー の 場 合 に は 、 errno ERANGE に 設 定 す る か 、 FE_OVERFLOW 例 外 を 発 生 す る こ と と さ れ て い る 。 実 際 の と こ ろ 、 ど の 現 行 の マ シ ン で も 結 果 が オ ー バ ー フ ロ ー を 起 こ す こ と は な い の で 、 こ の エ ラ ー 処 理 は 意 味 が な い 。 (よ り 正 確 に 言 う と 、 オ ー バ ー フ ロ ー は 指 数 部 の 最 大 値 が 仮 数 部 を 表 す ビ ッ ト の 数 よ り 小 さ い 場 合 に し か 起 こ ら な い 。 IEEE-754 規 格 の 32 ビ ッ ト と 64 ビ ッ ト の 浮 動 小 数 で は 、 指 数 部 の 最 大 値 は そ れ ぞ れ 128 と 1024 で あ り 、 仮 数 部 の ビ ッ ト 数 は そ れ ぞ れ 24 と 53 で あ る 。 )

丸 め た 値 を 整 数 型 に 格 納 し た 場 合 に は 、 お そ ら く こ の 関 数 で は な く lrint (3) に 載 っ て い る 関 数 の ど れ か を 使 い た い の だ ろ う 。

関 連 項 目

ceil (3), floor (3), lrint (3), round (3), trunc (3)

こ の 文 書 に つ い て

こ の man ペ ー ジ は Linux man-pages プ ロ ジ ェ ク ト の リ リ ー ス 5.10 の 一 部 で あ る 。 プ ロ ジ ェ ク ト の 説 明 と バ グ 報 告 に 関 す る 情 報 は https://www.kernel.org/doc/man-pages/ に 書 か れ て い る 。