# Record BigDecimal

Description
Hierarchy
Fields
Methods
Properties

## Unit

bigdecimalmath_template

## Declaration

`type BigDecimal = record`

## Description

Big Decimal type

.
Consisting of an bcd integer times a decimal exponent ([integer digits] * 10 ˆ (DIGITS_PER_ELEMENT * exponent))
It can be used like a normal floating point number. E.g:

    var bd: BigDecimal;
    bd := 12.34;
    bd := bd * 1000 - 42;  // bd = 12298
    bd := bd / 7.0;        // bd = 1756.85714285714286
    bd := StrToBigDecimal('123456789012345678901234567890123456789') + 1; // bd = 123456789012345678901234567890123456790

It has an arbitrary precision (up to 18 billion digits), and can be converted to a decimal string without loss of precision, since it stores decimal digits (up to 9 digits / array element, depending on compiler define).

## Overview

### Fields

| `digits: array of BigDecimalBin;`
| `exponent: integer;`
| `signed: ByteBool;`
| `lastDigitHidden: ByteBool;`

## Description

### Fields

| `digits: array of BigDecimalBin;`

| `exponent: integer;`

| `signed: ByteBool;`

| `lastDigitHidden: ByteBool;`

Generated by PasDoc 0.16.0.