Поделиться через


Преобразования плавающей запятой

Объект типа плавающей запятой может быть безопасно преобразовать в более точное типу плавающей запятой, т е причинам преобразования нет потери значимости.Например, преобразование из Плавающая область В Двойное с плавающей запятой или Двойное с плавающей запятой В long double является безопасным и значение unchanged.

Объект типа плавающей запятой можно также преобразовать в менее точному типу, если он находится в диапазоне репрезентабельном этим типом.(См. Ограничения плавающей запятой для диапазонов типов плавающей запятой). Если исходное значение не может представлять точно, оно может быть преобразовано к следующему более выше или следующему нижнему репрезентабельному значение.Если такое значение не существует, результат не определен.Рассмотрим следующий пример:

cout << (float)1E300 << endl;

Максимальное значение репрезентабельное типом Плавающая область 3.402823466E38 - намного меньше число меньше 1E300.Поэтому число преобразуется в бесконечность, а результат 1.#INF.

См. также

Ссылки

Стандартные преобразования