Преобразование в целое
Прототип
INT DecToDLong ( DECIMAL Id, /* исходное вещественное число */ L_DLONG *Ol, /* преобразованное целое */ Int Round); /* признак округления */
Описание
Функция DecToDLong преобразует вещественное число с фиксированной точкой, заданное переменной Id типа DECIMAL, в длинное целое число типа L_DLONG.
Если преобразуемое вещественное число имеет целочисленное значение, то параметр Round игнорируется;
Если Round = 0, выполняется округление до целого значения.
Если вещественное число содержит дробную часть и значение Round = 1, то функция возвращает ошибку преобразования
Возвращаемое значение
Код завершения (0 или 1). При успешном завершении – целая часть вещественного числа (без округления) в переменной Ol типа L_DLONG.
Пример
…
if ((ok =DecToDLong(vdec, &LStr, 1)) == 0)
{ /* Ошибка преобразования с округлением*/
printf('\n Ошибка: переполнение при преобразовании');
goto lend;
} /* Ifthen */
…