Boost C++ Libraries Home Libraries People FAQ More

PrevUpHomeNext

截斷函數

#include <boost/math/special_functions/trunc.hpp>

template <class T>
T trunc(const T& v);

template <class T, class Policy>
T trunc(const T& v, const Policy&);

template <class T>
int itrunc(const T& v);

template <class T, class Policy>
int itrunc(const T& v, const Policy&);

template <class T>
long ltrunc(const T& v);

template <class T, class Policy>
long ltrunc(const T& v, const Policy&);

template <class T>
long long lltrunc(const T& v);

template <class T, class Policy>
long long lltrunc(const T& v, const Policy&);

函數trunc 將它的參數捨入為整數值, 接近於參數的大小,但在數值上不再比參數大.

例如 itrunc(3.7) 會返回 3ltrunc(-4.6) 返回-4.

如果v的值是無限的,或者 v 超出了返回值類型的取值範圍, 返回的結果是捨入錯誤: 缺省情況下是拋出一個 boost::math::rounding_error 異常。


PrevUpHomeNext