Decimal.ToDouble(Decimal) Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Belirtilen değerini Decimal eşdeğer çift duyarlıklı kayan noktalı sayıya dönüştürür.
public:
static double ToDouble(System::Decimal d);
public static double ToDouble (decimal d);
static member ToDouble : decimal -> double
Public Shared Function ToDouble (d As Decimal) As Double
Parametreler
- d
- Decimal
Dönüştürülecek ondalık sayı.
Döndürülenler
İle eşdeğer bir çift duyarlıklı kayan noktalı sayı d
.
Örnekler
Aşağıdaki kod örneği, Decimal
Double yöntemini kullanarak sayıları değerlere dönüştürür ToDouble
.
// Example of the Decimal::ToSingle and Decimal::ToDouble methods.
using namespace System;
#define formatter "{0,30}{1,17}{2,23}"
// Convert the Decimal argument; no exceptions are thrown.
void DecimalToSgl_Dbl( Decimal argument )
{
Object^ SingleValue;
Object^ DoubleValue;
// Convert the argument to a float value.
SingleValue = Decimal::ToSingle( argument );
// Convert the argument to a double value.
DoubleValue = Decimal::ToDouble( argument );
Console::WriteLine( formatter, argument, SingleValue, DoubleValue );
}
int main()
{
Console::WriteLine( "This example of the \n"
" Decimal::ToSingle( Decimal ) and \n"
" Decimal::ToDouble( Decimal ) \nmethods "
"generates the following output. It \ndisplays "
"several converted Decimal values.\n" );
Console::WriteLine( formatter, "Decimal argument", "float", "double" );
Console::WriteLine( formatter, "----------------", "-----", "------" );
// Convert Decimal values and display the results.
DecimalToSgl_Dbl( Decimal::Parse( "0.0000000000000000000000000001" ) );
DecimalToSgl_Dbl( Decimal::Parse( "0.0000000000123456789123456789" ) );
DecimalToSgl_Dbl( Decimal::Parse( "123" ) );
DecimalToSgl_Dbl( Decimal(123000000,0,0,false,6) );
DecimalToSgl_Dbl( Decimal::Parse( "123456789.123456789" ) );
DecimalToSgl_Dbl( Decimal::Parse( "123456789123456789123456789" ) );
DecimalToSgl_Dbl( Decimal::MinValue );
DecimalToSgl_Dbl( Decimal::MaxValue );
}
/*
This example of the
Decimal::ToSingle( Decimal ) and
Decimal::ToDouble( Decimal )
methods generates the following output. It
displays several converted Decimal values.
Decimal argument float double
---------------- ----- ------
0.0000000000000000000000000001 1E-28 1E-28
0.0000000000123456789123456789 1.234568E-11 1.23456789123457E-11
123 123 123
123.000000 123 123
123456789.123456789 1.234568E+08 123456789.123457
123456789123456789123456789 1.234568E+26 1.23456789123457E+26
-79228162514264337593543950335 -7.922816E+28 -7.92281625142643E+28
79228162514264337593543950335 7.922816E+28 7.92281625142643E+28
*/
// Example of the decimal.ToSingle and decimal.ToDouble methods.
using System;
class DecimalToSgl_DblDemo
{
static string formatter = "{0,30}{1,17}{2,23}";
// Convert the decimal argument; no exceptions are thrown.
public static void DecimalToSgl_Dbl( decimal argument )
{
object SingleValue;
object DoubleValue;
// Convert the argument to a float value.
SingleValue = decimal.ToSingle( argument );
// Convert the argument to a double value.
DoubleValue = decimal.ToDouble( argument );
Console.WriteLine( formatter, argument,
SingleValue, DoubleValue );
}
public static void Main( )
{
Console.WriteLine( "This example of the \n" +
" decimal.ToSingle( decimal ) and \n" +
" decimal.ToDouble( decimal ) \nmethods " +
"generates the following output. It \ndisplays " +
"several converted decimal values.\n" );
Console.WriteLine( formatter, "decimal argument",
"float", "double" );
Console.WriteLine( formatter, "----------------",
"-----", "------" );
// Convert decimal values and display the results.
DecimalToSgl_Dbl( 0.0000000000000000000000000001M );
DecimalToSgl_Dbl( 0.0000000000123456789123456789M );
DecimalToSgl_Dbl( 123M );
DecimalToSgl_Dbl( new decimal( 123000000, 0, 0, false, 6 ) );
DecimalToSgl_Dbl( 123456789.123456789M );
DecimalToSgl_Dbl( 123456789123456789123456789M );
DecimalToSgl_Dbl( decimal.MinValue );
DecimalToSgl_Dbl( decimal.MaxValue );
}
}
/*
This example of the
decimal.ToSingle( decimal ) and
decimal.ToDouble( decimal )
methods generates the following output. It
displays several converted decimal values.
decimal argument float double
---------------- ----- ------
0.0000000000000000000000000001 1E-28 1E-28
0.0000000000123456789123456789 1.234568E-11 1.23456789123457E-11
123 123 123
123.000000 123 123
123456789.123456789 1.234568E+08 123456789.123457
123456789123456789123456789 1.234568E+26 1.23456789123457E+26
-79228162514264337593543950335 -7.922816E+28 -7.92281625142643E+28
79228162514264337593543950335 7.922816E+28 7.92281625142643E+28
*/
' Example of the Decimal.ToSingle and Decimal.ToDouble methods.
Module DecimalToSgl_DblDemo
Dim formatter As String = "{0,30}{1,17}{2,23}"
' Convert the Decimal argument; no exceptions are thrown.
Sub DecimalToSgl_Dbl( argument As Decimal )
Dim SingleValue As Object
Dim DoubleValue As Object
' Convert the argument to a Single value.
SingleValue = Decimal.ToSingle( argument )
' Convert the argument to a Double value.
DoubleValue = Decimal.ToDouble( argument )
Console.WriteLine( formatter, argument, _
SingleValue, DoubleValue )
End Sub
Sub Main( )
Console.WriteLine( "This example of the " & vbCrLf & _
" Decimal.ToSingle( Decimal ) and " & vbCrLf & _
" Decimal.ToDouble( Decimal ) " & vbCrLf & "methods " & _
"generates the following output. It " & vbCrLf & _
"displays several converted Decimal values." & vbCrLf )
Console.WriteLine( formatter, "Decimal argument", _
"Single", "Double" )
Console.WriteLine( formatter, "----------------", _
"------", "------" )
' Convert Decimal values and display the results.
DecimalToSgl_Dbl( 0.0000000000000000000000000001D )
DecimalToSgl_Dbl( 0.0000000000112233445566778899D )
DecimalToSgl_Dbl( 123D )
DecimalToSgl_Dbl( New Decimal( 123000000, 0, 0, False, 6 ) )
DecimalToSgl_Dbl( 123456789.123456789D )
DecimalToSgl_Dbl( 123456789123456789123456789D )
DecimalToSgl_Dbl( Decimal.MinValue )
DecimalToSgl_Dbl( Decimal.MaxValue )
End Sub
End Module
' This example of the
' Decimal.ToSingle( Decimal ) and
' Decimal.ToDouble( Decimal )
' methods generates the following output. It
' displays several converted Decimal values.
'
' Decimal argument Single Double
' ---------------- ------ ------
' 0.0000000000000000000000000001 1E-28 1E-28
' 0.0000000000112233445566778899 1.122334E-11 1.12233445566779E-11
' 123 123 123
' 123.000000 123 123
' 123456789.123456789 1.234568E+08 123456789.123457
' 123456789123456789123456789 1.234568E+26 1.23456789123457E+26
' -79228162514264337593543950335 -7.922816E+28 -7.92281625142643E+28
' 79228162514264337593543950335 7.922816E+28 7.92281625142643E+28
Açıklamalar
Çift duyarlıklı kayan noktalı sayı bir ile daha az sayıda önemli basamak içerdiğinden bu işlem, yuvarlama hataları üretebilir Decimal .
Decimal Double Atama işlecini kullanarak da bir değere dönüştürebilirsiniz Explicit . Dönüştürme bir duyarlık kaybını tamamen sıraya albildiğinden, C# ' de bir atama işleci veya Visual Basic bir dönüştürme işlevi kullanmanız gerekir.