Читая спецификации языка C, я обнаружил эту функцию:
double remquo(double x, double y, int *quo);
float remquof(float x, float y, int *quo);
long double remquol(long double x, long double y,
int *quo);
Функции
remquo
вычисляют тот же остаток, что и] остаток
функций.В объект, на который указывает кавычка, они хранят значение, знак которого является знакомx / y
и чей величина конгруэнтна по модулю 2 ^ n к величине интегрального частногоx / y
, где n - определяемое реализацией целое число, большее или равное 3.Функции
remquo
возвращаютx
REMy
. Еслиy
равно нулю, значение, сохраненное в объекте указываетсяquo
, не указывается, возникает ли ошибка домена или функции нулевой возврат определяется реализацией.
Я понимаю, что он возвращает, он возвращает fmod (x, y)
, но я не понимаю всей части quo
. Это семантически равно этому?
*quo = (int) x/y;
*quo %= n; /* n implementation defined */
И мой последний вопрос, для чего эта функция может быть полезна?