Movatterモバイル変換


[0]ホーム

URL:


cppreference.com
Namespaces
Variants
    Actions

      ckd_add

      From cppreference.com
      <c‎ |numeric
       
       
       
       
      Defined in header<stdckdint.h>
      #define ckd_add( result, a, b ) /* implementation-defined */

      // exposed interface:

      bool ckd_add( type1* result, type2 a, type3 b);
      (since C23)

      Computes the additionx+ y and stores the result into*result. The addition is performed as if both operands were represented in a signed integer type with infinite range, and the result was then converted from this integer type totype1. If the value assigned to*result correctly represents the mathematical result of the operation, it returnsfalse. Otherwise, it returnstrue. In this case, the value assigned to*result is the mathematical result of the operation wrapped around to the width of*result.

      Contents

      [edit]Parameters

      a, b - integer values
      result - address of where result should be stored

      [edit]Return value

      false if the value assigned to*result correctly represents the mathematical result of the addition,true otherwise.

      [edit]Note

      Bothtype2 andtype3 shall be any integer type other than “plain”char,bool, abit-precise integer type, or anenumerated type, and they can be the same.*result shall be a modifiable lvalue of any integer type other than “plain”char,bool, a bit-precise integer type, or an enumerated type.

      It is recommended to produce a diagnostic message iftype2 ortype3 are not suitable integer types, or if*result is not a modifiable lvalue of a suitable integer type.

      [edit]Example

      This section is incomplete
      Reason: no example

      [edit]References

      • C23 standard (ISO/IEC 9899:2024):
      • 7.20.1 The ckd_ checked integer operation macros (p: 311)

      [edit]See also

      (C23)
      checked subtraction operation on two integers
      (type-generic function macro)[edit]
      (C23)
      checked multiplication operation on two integers
      (type-generic function macro)[edit]
      Retrieved from "https://en.cppreference.com/mwiki/index.php?title=c/numeric/ckd_add&oldid=178629"

      [8]ページ先頭

      ©2009-2025 Movatter.jp