Aracılığıyla paylaş


remquo, remquof, remquol

İki tamsayı değerinin geri kalanını hesaplar ve bir parametredeki bölüm işareti ve yaklaşık büyüklüğü ile bir tamsayı değeri depolar.

Sözdizimi

double remquo( double numer, double denom, int* quo );
float remquof( float numer, float denom, int* quo );
long double remquol( long double numer, long double denom, int* quo );
#define remquo(X, Y, INT_PTR) // Requires C11 or higher

float remquo( float numer, float denom, int* quo ); /* C++ only */
long double remquo( long double numer, long double denom, int* quo ); /* C++ only */

Parametreler

numer
Pay.

denom
Payda.

quo
İşareti ve bölüme ait yaklaşık büyüklüğe sahip bir değeri depolamak için bir tamsayı işaretçisi.

Dönüş değeri

remquo öğesinin kayan nokta geri kalanını x / ydöndürür. değeri y 0,0 ise sessiz remquo bir NaN döndürür. Sessiz bir NaN'nin aile tarafından temsili printf hakkında bilgi için bkz printf. , _printf_l, wprintf, _wprintf_l.

Açıklamalar

remquo İşlev, * değerinin xy x / f + * = ynkayan nokta geri kalanını f hesaplar; burada n bir tamsayıdır, f ile aynı işaretine xsahiptir ve mutlak değeri f mutlak değerinden yküçüktür.

C++ aşırı yüklemeye izin verir, böylece bu alma ve döndürme float veya long double değerlerin remquo aşırı yüklemelerini çağırabilirsiniz. C programında, bu işlevi çağırmak için tgmath.h makrosunu <kullanmıyorsanız, remquo her zaman iki double bağımsız değişken alır ve bir doubledöndürür.>

tgmath.h>remquo() makroyu <kullanırsanız, işlevin hangi sürümünün seçili olduğunu bağımsız değişkenin türü belirler. Ayrıntılar için bkz . Tür genel matematik .

Varsayılan olarak, bu işlevin genel durumunun kapsamı uygulama olarak belirlenmiştir. Bu davranışı değiştirmek için bkz. CRT'de Genel durum.

Gereksinimler

İşlev Gerekli üst bilgi (C) Gerekli üst bilgi (C++)
remquo, remquof, remquol <math.h> <cmath> veya <math.h>
remquo Makro <tgmath.h>

Uyumluluk bilgileri için bkz . Uyumluluk.

Örnek

// crt_remquo.c
// This program displays a floating-point remainder.

#include <math.h>
#include <stdio.h>

int main( void )
{
   double w = -10.0, x = 3.0, z;
   int quo = 0;

   z = remquo(w, x, &quo);
   printf("The remainder of %.2f / %.2f is %f\n", w, x, z);
   printf("Approximate signed quotient is %d\n", quo);
}
The remainder of -10.00 / 3.00 is -1.000000
Approximate signed quotient is -3

Ayrıca bkz.

Matematik ve kayan nokta desteği
ldiv, lldiv
imaxdiv
fmod, fmodf
remainder, remainderf, remainderl