This documentation is archived and is not being maintained.

BigInteger.Multiply Method

Visual Studio 2010

Returns the product of two BigInteger values.

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

Syntax

```public static BigInteger Multiply(
BigInteger left,
BigInteger right
)
```

Parameters

left
Type: System.Numerics.BigInteger
The first number to multiply.
right
Type: System.Numerics.BigInteger
The second number to multiply.

Return Value

Type: System.Numerics.BigInteger
The product of the left and right parameters.

Remarks

The Multiply method is implemented for languages that do not support operator overloading. Its behavior is identical to multiplication using the multiplication operator. In addition, the Multiply method is a useful substitute for the multiplication operator when instantiating a BigInteger variable by assigning it a product that results from multiplication, as shown in the following example.

```
// The statement
//    BigInteger number = Int64.MaxValue * 3;
// produces compiler error CS0220: The operation overflows at compile time in checked mode.
// The alternative:
BigInteger number = BigInteger.Multiply(Int64.MaxValue, 3);

```

If necessary, this method automatically performs implicit conversion of other integral types to BigInteger objects. This is illustrated in the example in the next section, where the Multiply method is passed two Int64 values.

Examples

The following example tries to perform multiplication with two long integers. Because the result exceeds the range of a long integer, an OverflowException is thrown, and the Multiply method is called to handle the multiplication. Note that C# requires that you use either the checked keyword (as in this example) or the /checked+ compiler option to make sure an exception is thrown on a numeric overflow.

```
long number1 = 1234567890;
long number2 = 9876543210;
try
{
long product;
product = checked(number1 * number2);
}
catch (OverflowException)
{
BigInteger product;
product = BigInteger.Multiply(number1, number2);
Console.WriteLine(product.ToString());
}

```

Supported in: 4

Supported in: 4

Platforms

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.