Учись программированию на C++ Builder бесплатно!
Содержание[Скрыть]

Функция modf() позволяет разделить число типа double на целую и дробную части. Целая часть помещается в iptr, а дробная возвращается. Метод modf имеет реализацию, которая использует Streaming SIMD Extensions 2 (SSE2).

C++ допускает вызов перегрузки modf, которая принимает и возвращает параметры типа float или long double. В приложении на языке программирования C функция modf всегда принимает на вход два двойных значения, а возвращает двойное значение.

Синтаксис

#include<math.h>

float modff(float x, float *iptr);
double modf(double x, double *iptr);
long double modfl(long double x, long double *iptr);

//x – число, которое требуется разделить на две части: целую дробную
//iptr – указатель на переменную, содержащую целую часть числа x

Прототип

Название Язык
math.h С
cmath С++

Возвращаемое значение

Метод modf() возвращает целую и дробную части в виде двух элементов, возвращаемое значение которых имеют один и тот же знак. Целая часть x возвращается в виде вещественного числа.

Обработка ошибок

Функция modf() не возвращает ошибки, соответствующие спецификации math_errhandling, в том случае, если арифметическая операция с плавающей запятой поддерживает IEEE (IEC 60559).

  • Если x равно ±0, возвращается ±0, а ±0 сохраняется в *iptr.
  • Если x равно ±∞, возвращается ±0, а ±∞ сохраняется в *iptr.
  • Если x равно NaN, возвращается NaN, а NaN сохраняется в *iptr.

Возвращаемое значение x является точным, а округление игнорируется.

Переносимость

Функция modf уникальна для DOS.

Пример

#include <math.h>

double func, integer;
double number = StrToFloat(Edit1->Text);
func = modf(number,&integer);
Edit2->Text = integer;
Edit3->Text = func;

Modf – разделяет число на целую и дробную части

Поделиться