Type-generic math
De cppreference.com
|
|
This page has been machine-translated from the English version of the wiki using Google Translate.
The translation may contain errors and awkward wording. Hover over text to see the original version. You can help to fix errors and improve the translation. For instructions click here. |
<metanoindex/>
L'en-tête inclut
<tgmath.h> les en-têtes et <math.h> <complex.h> et définit plusieurs types génériques macros. Ces macros détermine la fonction réelle d'appeler en fonction des types des paramètres .Original:
The header
<tgmath.h> includes the headers <math.h> and <complex.h> and defines several type-generic macros. These macros determines the actual function to call depending on the types of the parameters.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Trigonométrique, hyperbolique, la puissance et les fonctions exponentielles NJ
Un
XXX macro de type générique appelle soit de:Original:
A type-generic macro
XXX calls either of:The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
- fonction réelle:Original:real function:The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
floatvarianteXXXfOriginal:floatvariantXXXfThe text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.doublevarianteXXXOriginal:doublevariantXXXThe text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.long doublevarianteXXXlOriginal:long doublevariantXXXlThe text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
- fonction complexe:Original:complex function:The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
floatvariantecXXXfOriginal:floatvariantcXXXfThe text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.doublevariantecXXXOriginal:doublevariantcXXXThe text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.long doublevariantecXXXlOriginal:long doublevariantcXXXlThe text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Une exception à la règle ci-dessus est
exp (voir le tableau ci-dessous) .Original:
An exception to the above rule is
exp (see the table below).The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
La fonction à appeler est déterminée comme suit:
Original:
The function to call is determined as follows:
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
- Si l'un des paramètres est complexe, alors la fonction est appelée complexe, sinon la fonction réelle est appelé .Original:If any of the parameters is complex, then the complex function is called, otherwise the real function is called.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions. - Si l'un des paramètres est
long double, puis la variantelong doubleest appelée. Autrement, si l'un des paramètres estdouble, puis la variantedoubleest appelée. Dans le cas contraire, la variantefloatest appelé .Original:If any of the parameters islong double, then thelong doublevariant is called. Otherwise, if any of the parameters isdouble, then thedoublevariant is called. Otherwise,floatvariant is called.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions. - Le comportement est indéfini est l'un des paramètres est incompatible avec l'argument de la fonction correspondante.
This section is incomplete
Reason: what's meant by incompatible?Original:The behavior is undefined is any of the parameters is incompatible with the corresponding argument of the function.This section is incomplete
Reason: what's meant by incompatible?The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Les macros de type génériques sont les suivants:
Original:
The type-generic macros are as follows:
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
| Type-generic macro | Real function variants |
Complex function variants | ||||
|---|---|---|---|---|---|---|
float |
double |
long double |
float |
double |
long double | |
| asin | asinf | asin | asinl | casinf | casin | casinl |
| acos | acosf | acos | acosl | cacosf | cacos | cacosl |
| atan | atanf | atan | atanl | catanf | catan | catanl |
| asinh | asinhf | asinh | asinhl | casinhf | casinh | casinhl |
| acosh | acoshf | acosh | acoshl | cacoshf | cacosh | cacoshl |
| atanh | atanhf | atanh | atanhl | catanhf | catanh | catanhl |
| sin | sinf | sin | sinl | csinf | csin | csinl |
| cos | cosf | cos | cosl | ccosf | ccos | ccosl |
| tan | tanf | tan | tanl | ctanf | ctan | ctanl |
| sinh | sinhf | sinh | sinhl | csinhf | csinh | csinhl |
| cosh | coshf | cosh | coshl | ccoshf | ccosh | ccoshl |
| tanh | tanhf | tanh | tanhl | ctanhf | ctanh | ctanhl |
| exp | expf | exp | expl | cexpf | cexp | cexpl |
| log | logf | log | logl | clogf | clog | clogl |
| pow | powf | pow | powl | cpowf | cpow | cpowl |
| sqrt | sqrtf | sqrt | sqrtl | csqrtf | csqrt | csqrtl |
| abs | fabsf | fabs | fabsl | cabsf | cabs | cabsl |
| exp | expf | exp | expl | cexpf | cexp | cexpl |
Divers NJ fonctions
Un
XXX macro de type générique appelle ou l'autre des variantes d'une fonction réelle:Original:
A type-generic macro
XXX calls either of the variants of a real function:The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
floatvarianteXXXfOriginal:floatvariantXXXfThe text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.doublevarianteXXXOriginal:doublevariantXXXThe text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.long doublevarianteXXXlOriginal:long doublevariantXXXlThe text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Remarque, il n'y a pas
modf type générique macro .Original:
Note, there's no
modf type-generic macro.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
La fonction à appeler est déterminée comme suit:
Original:
The function to call is determined as follows:
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
- Si l'un des paramètres est
long double, puis la variantelong doubleest appelée. Autrement, si l'un des paramètres estdouble, puis la variantedoubleest appelée. Dans le cas contraire, la variantefloatest appelé .Original:If any of the parameters islong double, then thelong doublevariant is called. Otherwise, if any of the parameters isdouble, then thedoublevariant is called. Otherwise,floatvariant is called.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions. - Le comportement est indéfini est l'un des paramètres est incompatible avec l'argument de la fonction correspondante.
This section is incomplete
Reason: what's meant by incompatible?Original:The behavior is undefined is any of the parameters is incompatible with the corresponding argument of the function.This section is incomplete
Reason: what's meant by incompatible?The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Exemple
int i;
float f;
double d;
long double ld;
float complex fc;
double complex dc;
long double complex ldc;
// macro -> function call
cos(i); // -> cos(i)
sin(f); // -> sinf(f)
acos(d); // -> acos(d)
sqrt(dc); // -> csqrt(dc);