---
name: "std::decimal::decimal128"
section: "3"
platform: "linux"
package: "gcc"
version: "16.2.1+r23+gd564253eb6c8-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/std::decimal::decimal128"
---

# std::decimal::decimal128(3)

3\.2.4 Class decimal128.

## NAME

std::decimal::decimal128 - 3.2.4 Class decimal128.

## SYNOPSIS

\#include \<decimal\>

### Public Types

typedef float **\_\_decfloat128**\

### Public Member Functions

**decimal128** (\_\_decfloat128 \_\_z)\
 Conforming extension: Conversion from scalar decimal type.  **decimal128** (**decimal32** d32)\
 **decimal128** (**decimal64** d64)\
 **decimal128** (double \_\_r)\
 **decimal128** (float \_\_r)\
 **decimal128** (int \_\_z)\
 **decimal128** (long \_\_z)\
 **decimal128** (long double \_\_r)\
 **decimal128** (long long \_\_z)\
 **decimal128** (unsigned int \_\_z)\
 **decimal128** (unsigned long \_\_z)\
 **decimal128** (unsigned long long \_\_z)\
 \_\_decfloat128 **\_\_getval** (void)\
 void **\_\_setval** (\_\_decfloat128 \_\_x)\
 **operator long long** () const\
 decimal128 & **operator\*=** (decimal128 \_\_rhs)\
 decimal128 & **operator\*=** (**decimal32** \_\_rhs)\
 decimal128 & **operator\*=** (**decimal64** \_\_rhs)\
 decimal128 & **operator\*=** (int \_\_rhs)\
 decimal128 & **operator\*=** (long \_\_rhs)\
 decimal128 & **operator\*=** (long long \_\_rhs)\
 decimal128 & **operator\*=** (unsigned int \_\_rhs)\
 decimal128 & **operator\*=** (unsigned long \_\_rhs)\
 decimal128 & **operator\*=** (unsigned long long \_\_rhs)\
 decimal128 & **operator++** ()\
 decimal128 **operator++** (int)\
 decimal128 & **operator+=** (decimal128 \_\_rhs)\
 decimal128 & **operator+=** (**decimal32** \_\_rhs)\
 decimal128 & **operator+=** (**decimal64** \_\_rhs)\
 decimal128 & **operator+=** (int \_\_rhs)\
 decimal128 & **operator+=** (long \_\_rhs)\
 decimal128 & **operator+=** (long long \_\_rhs)\
 decimal128 & **operator+=** (unsigned int \_\_rhs)\
 decimal128 & **operator+=** (unsigned long \_\_rhs)\
 decimal128 & **operator+=** (unsigned long long \_\_rhs)\
 decimal128 & **operator--** ()\
 decimal128 **operator--** (int)\
 decimal128 & **operator-=** (decimal128 \_\_rhs)\
 decimal128 & **operator-=** (**decimal32** \_\_rhs)\
 decimal128 & **operator-=** (**decimal64** \_\_rhs)\
 decimal128 & **operator-=** (int \_\_rhs)\
 decimal128 & **operator-=** (long \_\_rhs)\
 decimal128 & **operator-=** (long long \_\_rhs)\
 decimal128 & **operator-=** (unsigned int \_\_rhs)\
 decimal128 & **operator-=** (unsigned long \_\_rhs)\
 decimal128 & **operator-=** (unsigned long long \_\_rhs)\
 decimal128 & **operator/=** (decimal128 \_\_rhs)\
 decimal128 & **operator/=** (**decimal32** \_\_rhs)\
 decimal128 & **operator/=** (**decimal64** \_\_rhs)\
 decimal128 & **operator/=** (int \_\_rhs)\
 decimal128 & **operator/=** (long \_\_rhs)\
 decimal128 & **operator/=** (long long \_\_rhs)\
 decimal128 & **operator/=** (unsigned int \_\_rhs)\
 decimal128 & **operator/=** (unsigned long \_\_rhs)\
 decimal128 & **operator/=** (unsigned long long \_\_rhs)\

## Detailed Description

3\.2.4 Class decimal128.

## Constructor & Destructor Documentation

### std::decimal::decimal128::decimal128 (\_\_decfloat128 \_\_z) \[inline\]

Conforming extension: Conversion from scalar decimal type.

## Author

Generated automatically by Doxygen for libstdc++ from the source code.
