Decimal Struct

Definition

Represents a decimal floating-point number.

public value class System::Decimal : IComparable, IComparable<System::Decimal>, IConvertible, IEquatable<System::Decimal>, IFormattable
public value class System::Decimal : IComparable, IConvertible, IFormattable
public value class System::Decimal : IComparable, IComparable<System::Decimal>, IConvertible, IEquatable<System::Decimal>, IFormattable, System::Runtime::Serialization::IDeserializationCallback
public value class System::Decimal : IComparable, IComparable<System::Decimal>, IEquatable<System::Decimal>, IFormattable
public struct Decimal : IComparable, IComparable<decimal>, IConvertible, IEquatable<decimal>, IFormattable
[System.Serializable]
public struct Decimal : IComparable, IConvertible, IFormattable
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public struct Decimal : IComparable, IComparable<decimal>, IConvertible, IEquatable<decimal>, IFormattable
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public struct Decimal : IComparable, IComparable<decimal>, IConvertible, IEquatable<decimal>, IFormattable, System.Runtime.Serialization.IDeserializationCallback
public struct Decimal : IComparable, IComparable<decimal>, IEquatable<decimal>, IFormattable
public struct Decimal : IComparable, IComparable<decimal>, IConvertible, IEquatable<decimal>, IFormattable, System.Runtime.Serialization.IDeserializationCallback
public readonly struct Decimal : IComparable, IComparable<decimal>, IConvertible, IEquatable<decimal>, IFormattable, System.Runtime.Serialization.IDeserializationCallback
type decimal = struct
    interface IConvertible
    interface IFormattable
[<System.Serializable>]
type decimal = struct
    interface IFormattable
    interface IConvertible
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type decimal = struct
    interface IFormattable
    interface IConvertible
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type decimal = struct
    interface IFormattable
    interface IConvertible
    interface IDeserializationCallback
type decimal = struct
    interface IFormattable
type decimal = struct
    interface IConvertible
    interface IFormattable
    interface IDeserializationCallback
Public Structure Decimal
Implements IComparable, IComparable(Of Decimal), IConvertible, IEquatable(Of Decimal), IFormattable
Public Structure Decimal
Implements IComparable, IConvertible, IFormattable
Public Structure Decimal
Implements IComparable, IComparable(Of Decimal), IConvertible, IDeserializationCallback, IEquatable(Of Decimal), IFormattable
Public Structure Decimal
Implements IComparable, IComparable(Of Decimal), IEquatable(Of Decimal), IFormattable
Inheritance
Decimal
Attributes
Implements

Remarks

For more information about this API, see Supplemental API remarks for Decimal.

Constructors

Name Description
Decimal(Double)

Initializes a new instance of Decimal to the value of the specified double-precision floating-point number.

Decimal(Int32, Int32, Int32, Boolean, Byte)

Initializes a new instance of Decimal from parameters specifying the instance's constituent parts.

Decimal(Int32)

Initializes a new instance of Decimal to the value of the specified 32-bit signed integer.

Decimal(Int32[])

Initializes a new instance of Decimal to a decimal value represented in binary and contained in a specified array.

Decimal(Int64)

Initializes a new instance of Decimal to the value of the specified 64-bit signed integer.

Decimal(Single)

Initializes a new instance of Decimal to the value of the specified single-precision floating-point number.

Decimal(UInt32)

Initializes a new instance of Decimal to the value of the specified 32-bit unsigned integer.

Decimal(UInt64)

Initializes a new instance of Decimal to the value of the specified 64-bit unsigned integer.

Fields

Name Description
MaxValue

Represents the largest possible value of Decimal. This field is constant and read-only.

MinusOne

Represents the number negative one (-1).

MinValue

Represents the smallest possible value of Decimal. This field is constant and read-only.

One

Represents the number one (1).

Zero

Represents the number zero (0).

Methods

Name Description
Add(Decimal, Decimal)

Adds two specified Decimal values.

Ceiling(Decimal)

Returns the smallest integral value that is greater than or equal to the specified decimal number.

Compare(Decimal, Decimal)

Compares two specified Decimal values.

CompareTo(Decimal)

Compares this instance to a specified Decimal object and returns a comparison of their relative values.

CompareTo(Object)

Compares this instance to a specified object and returns a comparison of their relative values.

Divide(Decimal, Decimal)

Divides two specified Decimal values.

Equals(Decimal, Decimal)

Returns a value indicating whether two specified instances of Decimal represent the same value.

Equals(Decimal)

Returns a value indicating whether this instance and a specified Decimal object represent the same value.

Equals(Object)

Returns a value indicating whether this instance and a specified Object represent the same type and value.

Floor(Decimal)

Rounds a specified Decimal number to the closest integer toward negative infinity.

FromOACurrency(Int64)

Converts the specified 64-bit signed integer, which contains an OLE Automation Currency value, to the equivalent Decimal value.

GetBits(Decimal)

Converts the value of a specified instance of Decimal to its equivalent binary representation.

GetHashCode()

Returns the hash code for this instance.

GetTypeCode()

Returns the TypeCode for value type Decimal.

Multiply(Decimal, Decimal)

Multiplies two specified Decimal values.

Negate(Decimal)

Returns the result of multiplying the specified Decimal value by negative one.

Parse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider)

Converts the span representation of a number to its Decimal equivalent using the specified style and culture-specific format.

Parse(String, IFormatProvider)

Converts the string representation of a number to its Decimal equivalent using the specified culture-specific format information.

Parse(String, NumberStyles, IFormatProvider)

Converts the string representation of a number to its Decimal equivalent using the specified style and culture-specific format.

Parse(String, NumberStyles)

Converts the string representation of a number in a specified style to its Decimal equivalent.

Parse(String)

Converts the string representation of a number to its Decimal equivalent.

Remainder(Decimal, Decimal)

Computes the remainder after dividing two Decimal values.

Round(Decimal, Int32, MidpointRounding)

Rounds a decimal value to the specified precision using the specified rounding strategy.

Round(Decimal, Int32)

Rounds a Decimal value to a specified number of decimal places.

Round(Decimal, MidpointRounding)

Rounds a decimal value to an integer using the specified rounding strategy.

Round(Decimal)

Rounds a decimal value to the nearest integer.

Subtract(Decimal, Decimal)

Subtracts a specified Decimal value from another.

ToByte(Decimal)

Converts the value of the specified Decimal to the equivalent 8-bit unsigned integer.

ToDouble(Decimal)

Converts the value of the specified Decimal to the equivalent double-precision floating-point number.

ToInt16(Decimal)

Converts the value of the specified Decimal to the equivalent 16-bit signed integer.

ToInt32(Decimal)

Converts the value of the specified Decimal to the equivalent 32-bit signed integer.

ToInt64(Decimal)

Converts the value of the specified Decimal to the equivalent 64-bit signed integer.

ToOACurrency(Decimal)

Converts the specified Decimal value to the equivalent OLE Automation Currency value, which is contained in a 64-bit signed integer.

ToSByte(Decimal)

Converts the value of the specified Decimal to the equivalent 8-bit signed integer.

ToSingle(Decimal)

Converts the value of the specified Decimal to the equivalent single-precision floating-point number.

ToString()

Converts the numeric value of this instance to its equivalent string representation.

ToString(IFormatProvider)

Converts the numeric value of this instance to its equivalent string representation using the specified culture-specific format information.

ToString(String, IFormatProvider)

Converts the numeric value of this instance to its equivalent string representation using the specified format and culture-specific format information.

ToString(String)

Converts the numeric value of this instance to its equivalent string representation, using the specified format.

ToUInt16(Decimal)

Converts the value of the specified Decimal to the equivalent 16-bit unsigned integer.

ToUInt32(Decimal)

Converts the value of the specified Decimal to the equivalent 32-bit unsigned integer.

ToUInt64(Decimal)

Converts the value of the specified Decimal to the equivalent 64-bit unsigned integer.

Truncate(Decimal)

Returns the integral digits of the specified Decimal; any fractional digits are discarded.

TryFormat(Span<Char>, Int32, ReadOnlySpan<Char>, IFormatProvider)

Tries to format the value of the current decimal instance into the provided span of characters.

TryParse(ReadOnlySpan<Char>, Decimal)

Converts the span representation of a number to its Decimal equivalent using the culture-specific format. A return value indicates whether the conversion succeeded or failed.

TryParse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider, Decimal)

Converts the span representation of a number to its Decimal equivalent using the specified style and culture-specific format. A return value indicates whether the conversion succeeded or failed.

TryParse(String, Decimal)

Converts the string representation of a number to its Decimal equivalent. A return value indicates whether the conversion succeeded or failed.

TryParse(String, NumberStyles, IFormatProvider, Decimal)

Converts the string representation of a number to its Decimal equivalent using the specified style and culture-specific format. A return value indicates whether the conversion succeeded or failed.

Operators

Name Description
Addition(Decimal, Decimal)

Adds two specified Decimal values.

Decrement(Decimal)

Decrements the Decimal operand by one.

Division(Decimal, Decimal)

Divides two specified Decimal values.

Equality(Decimal, Decimal)

Returns a value that indicates whether two Decimal values are equal.

Explicit(Decimal to Byte)

Defines an explicit conversion of a Decimal to an 8-bit unsigned integer.

Explicit(Decimal to Char)

Defines an explicit conversion of a Decimal to a Unicode character.

Explicit(Decimal to Double)

Defines an explicit conversion of a Decimal to a double-precision floating-point number.

Explicit(Decimal to Int16)

Defines an explicit conversion of a Decimal to a 16-bit signed integer.

Explicit(Decimal to Int32)

Defines an explicit conversion of a Decimal to a 32-bit signed integer.

Explicit(Decimal to Int64)

Defines an explicit conversion of a Decimal to a 64-bit signed integer.

Explicit(Decimal to SByte)

Defines an explicit conversion of a Decimal to an 8-bit signed integer.

This API is not CLS-compliant.

Explicit(Decimal to Single)

Defines an explicit conversion of a Decimal to a single-precision floating-point number.

Explicit(Decimal to UInt16)

Defines an explicit conversion of a Decimal to a 16-bit unsigned integer.

This API is not CLS-compliant.

Explicit(Decimal to UInt32)

Defines an explicit conversion of a Decimal to a 32-bit unsigned integer.

This API is not CLS-compliant.

Explicit(Decimal to UInt64)

Defines an explicit conversion of a Decimal to a 64-bit unsigned integer.

This API is not CLS-compliant.

Explicit(Double to Decimal)

Defines an explicit conversion of a double-precision floating-point number to a Decimal.

Explicit(Single to Decimal)

Defines an explicit conversion of a single-precision floating-point number to a Decimal.

GreaterThan(Decimal, Decimal)

Returns a value indicating whether a specified Decimal is greater than another specified Decimal.

GreaterThanOrEqual(Decimal, Decimal)

Returns a value indicating whether a specified Decimal is greater than or equal to another specified Decimal.

Implicit(Byte to Decimal)

Defines an implicit conversion of an 8-bit unsigned integer to a Decimal.

Implicit(Char to Decimal)

Defines an implicit conversion of a Unicode character to a Decimal.

Implicit(Int16 to Decimal)

Defines an implicit conversion of a 16-bit signed integer to a Decimal.

Implicit(Int32 to Decimal)

Defines an implicit conversion of a 32-bit signed integer to a Decimal.

Implicit(Int64 to Decimal)

Defines an implicit conversion of a 64-bit signed integer to a Decimal.

Implicit(SByte to Decimal)

Defines an implicit conversion of an 8-bit signed integer to a Decimal.

This API is not CLS-compliant.

Implicit(UInt16 to Decimal)

Defines an implicit conversion of a 16-bit unsigned integer to a Decimal.

This API is not CLS-compliant.

Implicit(UInt32 to Decimal)

Defines an implicit conversion of a 32-bit unsigned integer to a Decimal.

This API is not CLS-compliant.

Implicit(UInt64 to Decimal)

Defines an implicit conversion of a 64-bit unsigned integer to a Decimal.

This API is not CLS-compliant.

Increment(Decimal)

Increments the Decimal operand by 1.

Inequality(Decimal, Decimal)

Returns a value that indicates whether two Decimal objects have different values.

LessThan(Decimal, Decimal)

Returns a value indicating whether a specified Decimal is less than another specified Decimal.

LessThanOrEqual(Decimal, Decimal)

Returns a value indicating whether a specified Decimal is less than or equal to another specified Decimal.

Modulus(Decimal, Decimal)

Returns the remainder resulting from dividing two specified Decimal values.

Multiply(Decimal, Decimal)

Multiplies two specified Decimal values.

Subtraction(Decimal, Decimal)

Subtracts two specified Decimal values.

UnaryNegation(Decimal)

Negates the value of the specified Decimal operand.

UnaryPlus(Decimal)

Returns the value of the Decimal operand (the sign of the operand is unchanged).

Explicit Interface Implementations

Name Description
IComparable.CompareTo(Object)

Compares the current instance with another object of the same type and returns an integer that indicates whether the current instance precedes, follows, or occurs in the same position in the sort order as the other object.

IConvertible.GetTypeCode()

Returns the TypeCode for this instance.

IConvertible.ToBoolean(IFormatProvider)

For a description of this member, see ToBoolean(IFormatProvider).

IConvertible.ToByte(IFormatProvider)

For a description of this member, see ToByte(IFormatProvider).

IConvertible.ToChar(IFormatProvider)

This conversion is not supported. Attempting to use this method throws an InvalidCastException.

IConvertible.ToDateTime(IFormatProvider)

This conversion is not supported. Attempting to use this method throws an InvalidCastException.

IConvertible.ToDecimal(IFormatProvider)

For a description of this member, see ToDecimal(IFormatProvider).

IConvertible.ToDouble(IFormatProvider)

For a description of this member, see ToDouble(IFormatProvider).

IConvertible.ToInt16(IFormatProvider)

For a description of this member, see ToInt16(IFormatProvider).

IConvertible.ToInt32(IFormatProvider)

For a description of this member, see ToInt32(IFormatProvider).

IConvertible.ToInt64(IFormatProvider)

For a description of this member, see ToInt64(IFormatProvider).

IConvertible.ToSByte(IFormatProvider)

For a description of this member, see ToSByte(IFormatProvider).

IConvertible.ToSingle(IFormatProvider)

For a description of this member, see ToSingle(IFormatProvider).

IConvertible.ToType(Type, IFormatProvider)

For a description of this member, see ToType(Type, IFormatProvider).

IConvertible.ToUInt16(IFormatProvider)

For a description of this member, see ToUInt16(IFormatProvider).

IConvertible.ToUInt32(IFormatProvider)

For a description of this member, see ToInt32(IFormatProvider).

IConvertible.ToUInt64(IFormatProvider)

For a description of this member, see ToInt64(IFormatProvider).

IDeserializationCallback.OnDeserialization(Object)

Runs when the deserialization of an object has been completed.

Applies to

Thread Safety

All members of this type are thread safe. Members that appear to modify instance state actually return a new instance initialized with the new value. As with any other type, reading and writing to a shared variable that contains an instance of this type must be protected by a lock to guarantee thread safety.

See also