Decimal Explicit Conversion (Decimal to Single)
Defines an explicit conversion of a Decimal to a single-precision floating-point number.
Assembly: mscorlib (in mscorlib.dll)
Parameters
- value
-
Type:
System::Decimal
The value to convert.
Return Value
Type: System::SingleA single-precision floating-point number that represents the converted Decimal.
This operation can result in a loss of precision, because a single-precision floating-point number has fewer significant digits than a Decimal.
This operator supports the explicit conversion of a Decimal to a Single. The syntax for such explicit conversions is language-dependent, and individual language compilers can provide different implementations and return different results. The example illustrates the different return values when you explicitly convert a Decimal value to a Single value by using C# and Visual Basic. To perform a conversion that is independent of language, you can call the ToSingle or the Convert::ToSingle(Decimal) method.
The following example converts Decimal numbers to Single values by using the explicit Decimal to Single conversion.
using namespace System; void main() { // Define an array of Decimal values. array<Decimal>^ values = { Decimal::Parse("0.0000000000000000000000000001"), Decimal::Parse("0.0000000000123456789123456789"), Decimal::Parse("123"), Decimal(123000000, 0, 0, false, 6), Decimal::Parse("123456789.123456789"), Decimal::Parse("123456789123456789123456789"), Decimal::MinValue, Decimal::MaxValue }; // Convert each value to a double. for each (Decimal value in values) { float dblValue = (float) value; Console::WriteLine("{0} ({1}) --> {2} ({3})", value, value.GetType()->Name, dblValue, dblValue.GetType()->Name); } } // The example displays the following output: // 0.0000000000000000000000000001 (Decimal) --> 1E-28 (Single) // 0.0000000000123456789123456789 (Decimal) --> 1.234568E-11 (Single) // 123 (Decimal) --> 123 (Single) // 123.000000 (Decimal) --> 123 (Single) // 123456789.123456789 (Decimal) --> 1.234568E+08 (Single) // 123456789123456789123456789 (Decimal) --> 1.234568E+26 (Single) // -79228162514264337593543950335 (Decimal) --> -7.922816E+28 (Single) // 79228162514264337593543950335 (Decimal) --> 7.922816E+28 (Single)
Available since 8
.NET Framework
Available since 1.1
Portable Class Library
Supported in: portable .NET platforms
Silverlight
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Windows Phone
Available since 8.1