This documentation is archived and is not being maintained.

# Decimal.op_Subtraction Method

.NET Framework 3.0
Subtracts two specified Decimal values.

Namespace: System
Assembly: mscorlib (in mscorlib.dll)

## Syntax

```public static decimal operator - (
decimal d1,
decimal d2
)
```
```Not applicable.
```

d1

A Decimal.

d2

A Decimal.

#### Return Value

The Decimal result of subtracting d2 from d1.

## Exceptions

Exception typeCondition

OverflowException

The return value is less than MinValue or greater than MaxValue.

## Example

The following code example creates several pairs of Decimal values and calculates their differences with the Subtraction operator.

```// Example of the decimal addition and subtraction operators.
using System;

{
const string dataFmt = "   {0,-18}{1,31}" ;

// Display decimal parameters and their sum and difference.
static void ShowDecimalSumDiff( decimal Left, decimal Right )
{
Console.WriteLine( );
Console.WriteLine( dataFmt, "decimal Left", Left );
Console.WriteLine( dataFmt, "decimal Right", Right );
Console.WriteLine( dataFmt, "Left + Right",
Left + Right );
Console.WriteLine( dataFmt, "Left - Right",
Left - Right );
}

static void Main( )
{
Console.WriteLine( "This example of the decimal " +
"addition and subtraction operators \ngenerates the " +
"following output. It displays the sum and \n" +
"difference of several pairs of decimal objects."  );

// Create pairs of decimal objects.
ShowDecimalSumDiff(
new decimal( 1230000000, 0, 0, false, 7 ),
0.0012300M );
ShowDecimalSumDiff( 123.456789M, 0.006789M );
ShowDecimalSumDiff( 12345678900000000M,
0.00000000123456789M );
ShowDecimalSumDiff( 123456789.0123456789M,
123456789.1123456789M );
}
}

/*
This example of the decimal addition and subtraction operators
generates the following output. It displays the sum and
difference of several pairs of decimal objects.

decimal Left                          123.0000000
decimal Right                           0.0012300
Left + Right                          123.0012300
Left - Right                          122.9987700

decimal Left                           123.456789
decimal Right                            0.006789
Left + Right                           123.463578
Left - Right                           123.450000

decimal Left                    12345678900000000
decimal Right                 0.00000000123456789
Left + Right       12345678900000000.000000001235
Left - Right       12345678899999999.999999998765

decimal Left                 123456789.0123456789
decimal Right                123456789.1123456789
Left + Right                 246913578.1246913578
Left - Right                        -0.1000000000
*/

```
```// Example of the decimal addition and subtraction operators.
import System.* ;

{
private static String dataFmt = "   {0,-18}{1,31}";

// Display decimal parameters and their sum and difference.
static void ShowDecimalSumDiff(System.Decimal left, System.Decimal right)
{
Console.WriteLine();
Console.WriteLine(dataFmt, "decimal Left", left);
Console.WriteLine(dataFmt, "decimal Right", right);
Console.WriteLine(dataFmt, "Left + Right",
Console.WriteLine(dataFmt, "Left - Right",
System.Convert.ToString(Decimal.Subtract(left , right)));
} //ShowDecimalSumDiff

public static void main(String[] args)
{
Console.WriteLine(("This example of the decimal "
+ "addition and subtraction operators \ngenerates the "
+ "following output. It displays the sum and \n"
+ "difference of several pairs of decimal objects."));

// Create pairs of decimal objects.
ShowDecimalSumDiff(new System.Decimal(1230000000, 0, 0, false,
System.Convert.ToByte(7)), System.Convert.ToDecimal(0.0012300));
ShowDecimalSumDiff(System.Convert.ToDecimal(123.456789),
System.Convert.ToDecimal(0.006789));
ShowDecimalSumDiff(System.Convert.ToDecimal(12345678900000000L),
System.Convert.ToDecimal(0.00000000123456789));
ShowDecimalSumDiff(System.Convert.ToDecimal(123456789.0123456789),
System.Convert.ToDecimal(123456789.1123456789));
} //main

/*
This example of the decimal addition and subtraction operators
generates the following output. It displays the sum and
difference of several pairs of decimal objects.

decimal Left                          123.0000000
decimal Right                             0.00123
Left + Right                          123.0012300
Left - Right                          122.9987700

decimal Left                           123.456789
decimal Right                            0.006789
Left + Right                           123.463578
Left - Right                           123.450000

decimal Left                    12345678900000000
decimal Right                 0.00000000123456789
Left + Right       12345678900000000.000000001235
Left - Right       12345678899999999.999999998765

decimal Left                     123456789.012346
decimal Right                    123456789.112346
Left + Right                     246913578.124692
Left - Right                            -0.100000
*/

```

## Platforms

Windows 98, Windows Server 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

## Version Information

#### .NET Framework

Supported in: 3.0, 2.0, 1.1, 1.0

#### .NET Compact Framework

Supported in: 2.0, 1.0

#### XNA Framework

Supported in: 1.0