Decimal Implicit Conversion (Int64 to Decimal)
Microsoft Silverlight will reach end of support after October 2021. Learn more.
Converts a 64-bit signed integer to a Decimal.
Namespace: System
Assembly: mscorlib (in mscorlib.dll)
Syntax
'Declaration
Public Shared Widening Operator CType ( _
value As Long _
) As Decimal
public static implicit operator decimal (
long value
)
Parameters
- value
Type: System.Int64
A 64-bit signed integer.
Return Value
Type: System.Decimal
A Decimal that represents the converted 64-bit signed integer.
Examples
The following code example converts Int64 values to Decimal numbers using the Int64 to Decimal conversion. This conversion is implicit in C#, but requires the op_Implicit operator in Visual Basic and C++. Implicit conversions to Decimal use other methods in these languages.
' Example of the op_Implicit conversion from Long to Decimal.
Module Example
Const formatter As String = _
"{0,20}{1,21}{2,10:X8}{3,9:X8}{4,9:X8}{5,9:X8}"
' Convert the Long argument and display the Decimal value.
Sub DecimalFromInt64(ByVal outputBlock As System.Windows.Controls.TextBlock, ByVal argument As Long)
Dim decValue As Decimal
Dim bits() As Integer
' The compiler invokes a constructor in Visual Basic
' unless op_Implicit is explicitly called.
decValue = Decimal.op_Implicit(argument)
' Display the Decimal and its binary representation.
bits = Decimal.GetBits(decValue)
outputBlock.Text &= String.Format(formatter, argument, decValue, _
bits(3), bits(2), bits(1), bits(0)) & vbCrLf
End Sub
Public Sub Demo(ByVal outputBlock As System.Windows.Controls.TextBlock)
outputBlock.Text &= String.Format( _
"This example of the op_Implicit conversion from Long " & _
"to Decimal generates the " & vbCrLf & "following " & _
"output. It displays the Decimal value and its " & _
"binary representation." & vbCrLf) & vbCrLf
outputBlock.Text &= String.Format(formatter, "Long argument", _
"Decimal value", "bits(3)", "bits(2)", _
"bits(1)", "bits(0)") & vbCrLf
outputBlock.Text &= String.Format(formatter, "-------------", _
"-------------", "-------", "-------", _
"-------", "-------") & vbCrLf
' Convert Long values and display the results.
DecimalFromInt64(outputBlock, Long.MinValue)
DecimalFromInt64(outputBlock, Long.MaxValue)
DecimalFromInt64(outputBlock, &HFFFFFFFFFFFF)
DecimalFromInt64(outputBlock, 123456789123456789)
DecimalFromInt64(outputBlock, -1000000000000000)
End Sub
End Module
' This example of the op_Implicit conversion from Long to Decimal generates the
' following output. It displays the Decimal value and its binary representation.
'
' Long argument Decimal value bits(3) bits(2) bits(1) bits(0)
' ------------- ------------- ------- ------- ------- -------
' -9223372036854775808 -9223372036854775808 80000000 00000000 80000000 00000000
' 9223372036854775807 9223372036854775807 00000000 00000000 7FFFFFFF FFFFFFFF
' 281474976710655 281474976710655 00000000 00000000 0000FFFF FFFFFFFF
' 123456789123456789 123456789123456789 00000000 00000000 01B69B4B ACD05F15
' -1000000000000000 -1000000000000000 80000000 00000000 00038D7E A4C68000
// Example of the implicit conversion from long to decimal.
using System;
class Example
{
const string formatter =
"{0,20}{1,21}{2,10:X8}{3,9:X8}{4,9:X8}{5,9:X8}";
// Convert the long argument and display the decimal value.
public static void DecimalFromInt64(System.Windows.Controls.TextBlock outputBlock, long argument)
{
decimal decValue;
int[] bits;
// Display the decimal and its binary representation.
decValue = argument;
bits = decimal.GetBits(decValue);
outputBlock.Text += String.Format(formatter, argument, decValue,
bits[3], bits[2], bits[1], bits[0]) + "\n";
}
public static void Demo(System.Windows.Controls.TextBlock outputBlock)
{
outputBlock.Text += String.Format(
"This example of the implicit conversion from long " +
"to decimal generates the \nfollowing output. It " +
"displays the decimal value and its binary " +
"representation.\n") + "\n";
outputBlock.Text += String.Format(formatter, "long argument",
"decimal value", "bits[3]", "bits[2]",
"bits[1]", "bits[0]") + "\n";
outputBlock.Text += String.Format(formatter, "-------------",
"-------------", "-------", "-------",
"-------", "-------") + "\n";
// Convert long values and display the results.
DecimalFromInt64(outputBlock, long.MinValue);
DecimalFromInt64(outputBlock, long.MaxValue);
DecimalFromInt64(outputBlock, 0xFFFFFFFFFFFF);
DecimalFromInt64(outputBlock, 123456789123456789);
DecimalFromInt64(outputBlock, -1000000000000000);
}
}
/*
This example of the implicit conversion from long to decimal generates the
following output. It displays the decimal value and its binary representation.
long argument decimal value bits[3] bits[2] bits[1] bits[0]
------------- ------------- ------- ------- ------- -------
-9223372036854775808 -9223372036854775808 80000000 00000000 80000000 00000000
9223372036854775807 9223372036854775807 00000000 00000000 7FFFFFFF FFFFFFFF
281474976710655 281474976710655 00000000 00000000 0000FFFF FFFFFFFF
123456789123456789 123456789123456789 00000000 00000000 01B69B4B ACD05F15
-1000000000000000 -1000000000000000 80000000 00000000 00038D7E A4C68000
*/
Version Information
Silverlight
Supported in: 5, 4, 3
Silverlight for Windows Phone
Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0
XNA Framework
Supported in: Xbox 360, Windows Phone OS 7.0
Platforms
For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.