ckd_mul
|
Défini dans l'en-tête
<stdckdint.h>
|
||
|
#define ckd_mul( result, a, b ) /* implementation-defined */
// interface exposée :
|
(depuis C23) | |
Calcule la multiplication x × y et stocke le résultat dans * result . La multiplication est effectuée comme si les deux opérandes étaient représentés dans un type entier signé avec une plage infinie, puis le résultat était converti de ce type entier vers type1 . Si la valeur assignée à * result représente correctement le résultat mathématique de l'opération, elle retourne false . Sinon, elle retourne true . Dans ce cas, la valeur assignée à * result est le résultat mathématique de l'opération enroulé sur la largeur de * result .
Table des matières |
Paramètres
| a, b | - | valeurs entières |
| result | - | adresse où le résultat doit être stocké |
Valeur de retour
false si la valeur assignée à * result représente correctement le résultat mathématique de la multiplication, true sinon.
Note
À la fois type2 et type3 doivent être un type entier autre que le char « simple », bool , un type entier à précision de bits , ou un type énuméré , et ils peuvent être identiques. * result doit être une lvalue modifiable de tout type entier autre que le char « simple », bool , un type entier à précision de bits, ou un type énuméré.
Il est recommandé de produire un message de diagnostic si type2 ou type3 ne sont pas des types entiers appropriés, ou si * result n'est pas une lvalue modifiable d'un type entier approprié.
Exemple
|
Cette section est incomplète
Raison : aucun exemple |
Références
- Norme C23 (ISO/CEI 9899:2024) :
-
- 7.20.1 Les macros d'opérations entières vérifiées ckd_ (p: 311)
Voir aussi
|
(C23)
|
opération d'addition vérifiée sur deux entiers
(macro fonction générique de type) |
|
(C23)
|
opération de soustraction vérifiée sur deux entiers
(macro fonction générique de type) |
|
documentation C++
pour
ckd_mul
|
|