次の方法で共有


UInt64 から Decimal への変換

64 ビット符号なし整数を Decimal に変換します。

この型変換は、CLS と互換性がありません。CLS との互換性に関する詳細については 「共通言語仕様の概要」 を参照してください。

<CLSCompliant(False)>
returnValue = Decimal.op_Implicit(value)
[C#]
[CLSCompliant(false)]
public static implicit operator decimal(ulongvalue);
[C++]
[CLSCompliant(false)]
public: static Decimal op_Implicit(unsigned __int64value);
[JScript]
returnValue = value;

[Visual Basic] Visual Basic では、この型で定義されている型変換を使用することができます。ただし、独自に定義することはできません。

[JScript] JScript では、この型で定義されている型変換を使用することができます。ただし、独自に定義することはできません。

引数 [Visual Basic, JScript]

  • value
    64 ビット符号なし整数。

パラメータ [C#, C++]

  • value
    64 ビット符号なし整数。

戻り値

変換された 64 ビット符号なし整数を表す Decimal

使用例

[Visual Basic, C#, C++] UInt64 to Decimal 変換を使用して UInt64 の値を Decimal の数値に変換するコード例を次に示します。この変換は C# では暗黙で行われますが、Visual Basic および C++ では op_Implicit 演算子が必要です。これらの言語では、 Decimal への暗黙の変換には、他のメソッドが使用されます。

 
' Example of the op_Implicit conversion from UInt64 to Decimal.
Imports System
Imports System.Globalization
Imports Microsoft.VisualBasic

Module DecimalFromUInt64Demo

    Const formatter As String = _
        "{0,20}{1,21}{2,10:X8}{3,9:X8}{4,9:X8}{5,9:X8}"
 
    ' Convert the UInt64 argument and display the Decimal value.
    Sub DecimalFromUInt64( argument As UInt64 )

        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 )
        Console.WriteLine( formatter, argument, decValue, _
            bits( 3 ), bits( 2 ), bits( 1 ), bits( 0 ) )
    End Sub 
       
    Sub Main( )

        Console.WriteLine( _
            "This example of the op_Implicit conversion from " & _
            "UInt64 to Decimal generates the " & vbCrLf & _
            "following output. It displays the Decimal value " & _
            "and its binary representation." & vbCrLf )
        Console.WriteLine( formatter, "UInt64 argument", _
            "Decimal value", "bits(3)", "bits(2)", _
            "bits(1)", "bits(0)" )
        Console.WriteLine( formatter, "---------------", _
            "-------------", "-------", "-------", _
            "-------", "-------" )
          
        ' Convert UInt64 values and display the results.
        DecimalFromUInt64( UInt64.Parse( "0" ) ) 
        DecimalFromUInt64( UInt64.Parse( "18446744073709551615" ) )
        DecimalFromUInt64( UInt64.Parse( "FFFFFFFFFFFF", _
            NumberStyles.HexNumber ) )
        DecimalFromUInt64( UInt64.Parse( "123456789123456789" ) ) 
        DecimalFromUInt64( UInt64.Parse( "1000000000000000" ) )
    End Sub 
End Module

' This example of the op_Implicit conversion from UInt64 to Decimal generates the
' following output. It displays the Decimal value and its binary representation.
'
'      UInt64 argument        Decimal value   bits(3)  bits(2)  bits(1)  bits(0)
'      ---------------        -------------   -------  -------  -------  -------
'                    0                    0  00000000 00000000 00000000 00000000
' 18446744073709551615 18446744073709551615  00000000 00000000 FFFFFFFF FFFFFFFF
'      281474976710655      281474976710655  00000000 00000000 0000FFFF FFFFFFFF
'   123456789123456789   123456789123456789  00000000 00000000 01B69B4B ACD05F15
'     1000000000000000     1000000000000000  00000000 00000000 00038D7E A4C68000

[C#] 
// Example of the implicit conversion from ulong to decimal.
using System;

class DecimalFromUInt64Demo
{
    const string formatter = 
        "{0,20}{1,21}{2,10:X8}{3,9:X8}{4,9:X8}{5,9:X8}";

    // Convert the ulong argument and display the decimal value.
    public static void DecimalFromUInt64( ulong argument )
    {
        decimal decValue;
        int[ ]  bits;

        // Display the decimal and its binary representation.
        decValue = argument;
        bits = decimal.GetBits( decValue );

        Console.WriteLine( formatter, argument, decValue, 
            bits[ 3 ], bits[ 2 ], bits[ 1 ], bits[ 0 ] );
    }

    public static void Main( )
    {
        Console.WriteLine( 
            "This example of the implicit conversion from ulong " +
            "to decimal generates the \nfollowing output. It " +
            "displays the decimal value and its binary " +
            "representation.\n" );
        Console.WriteLine( formatter, "ulong argument", 
            "decimal value", "bits[3]", "bits[2]", 
            "bits[1]", "bits[0]" );
        Console.WriteLine( formatter, "--------------", 
            "-------------", "-------", "-------", 
            "-------", "-------" );

        // Convert ulong values and display the results.
        DecimalFromUInt64( ulong.MinValue );
        DecimalFromUInt64( ulong.MaxValue );
        DecimalFromUInt64( 0xFFFFFFFFFFFF );
        DecimalFromUInt64( 123456789123456789 );
        DecimalFromUInt64( 1000000000000000 );
    }
}

/*
This example of the implicit conversion from ulong to decimal generates the
following output. It displays the decimal value and its binary representation.

      ulong argument        decimal value   bits[3]  bits[2]  bits[1]  bits[0]
      --------------        -------------   -------  -------  -------  -------
                   0                    0  00000000 00000000 00000000 00000000
18446744073709551615 18446744073709551615  00000000 00000000 FFFFFFFF FFFFFFFF
     281474976710655      281474976710655  00000000 00000000 0000FFFF FFFFFFFF
  123456789123456789   123456789123456789  00000000 00000000 01B69B4B ACD05F15
    1000000000000000     1000000000000000  00000000 00000000 00038D7E A4C68000
*/

[C++] 
// Example of the op_Implicit conversion from unsigned __int64 to 
// Decimal.
#using <mscorlib.dll>
using namespace System;

const __wchar_t* formatter = 
    L"{0,20}{1,21}{2,10:X8}{3,9:X8}{4,9:X8}{5,9:X8}";

// Convert the unsigned __int64 argument and display the Decimal value.
void DecimalFromInt64( unsigned __int64 argument )
{
    Decimal decValue;
    Int32   bits[ ];

    // The compiler invokes a constructor in the Managed Extensions 
    // for C++ unless op_Implicit is explicitly called.
    decValue = Decimal::op_Implicit( argument );

    // Display the Decimal and its binary representation.
    bits = Decimal::GetBits( decValue );
    Console::WriteLine( formatter, __box( argument ), 
        __box( decValue ), __box( bits[ 3 ] ), 
        __box( bits[ 2 ] ), __box( bits[ 1 ] ), __box( bits[ 0 ] ) );
}

void main( )
{
    Console::WriteLine( 
        S"This example of the op_Implicit conversion from unsigned " 
        S"__int64 to Decimal \ngenerates the following output. " 
        S"It displays the Decimal value and its \nbinary "
        S"representation.\n" );
    Console::WriteLine( formatter, S"unsigned __int64", 
        S"Decimal value", S"bits[3]", S"bits[2]", 
        S"bits[1]", S"bits[0]" );
    Console::WriteLine( formatter, S"----------------", 
        S"-------------", S"-------", S"-------", 
        S"-------", S"-------" );

    // Convert unsigned __int64 values and display the results.
    DecimalFromInt64( UInt64::MinValue );
    DecimalFromInt64( UInt64::MaxValue );
    DecimalFromInt64( 0xFFFFFFFFFFFF );
    DecimalFromInt64( 123456789123456789 );
    DecimalFromInt64( 1000000000000000 );
}

/*
This example of the op_Implicit conversion from unsigned __int64 to Decimal
generates the following output. It displays the Decimal value and its
binary representation.

    unsigned __int64        Decimal value   bits[3]  bits[2]  bits[1]  bits[0]
    ----------------        -------------   -------  -------  -------  -------
                   0                    0  00000000 00000000 00000000 00000000
18446744073709551615 18446744073709551615  00000000 00000000 FFFFFFFF FFFFFFFF
     281474976710655      281474976710655  00000000 00000000 0000FFFF FFFFFFFF
  123456789123456789   123456789123456789  00000000 00000000 01B69B4B ACD05F15
    1000000000000000     1000000000000000  00000000 00000000 00038D7E A4C68000
*/

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET, Common Language Infrastructure (CLI) Standard

参照

Decimal 構造体 | Decimal メンバ | System 名前空間 | UInt64