#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&);
Функции усечения округляют их аргумент до целого значения, близкого, но не большего по величине, чем аргумент.
Вернется<itrunc(3.7)><3>и<ltrunc(-4.6)>вернется<-4>.
Если аргументпротивявляется либо неокончательным, либо вне диапазона типа результата, то возвращает результатокругления_ошибки: По умолчанию это приводит к<boost::math::rounding_error>.