Click to Rate and Give Feedback
MSDN
MSDN Library
Visual Studio 2005
Visual Studio
Visual C#
C# Reference
C# Keywords
Types
Value Types
 float
Collapse All/Expand All Collapse All
This page is specific to
Microsoft Visual Studio 2005/.NET Framework 2.0

Other versions are also available for the following:
C# Language Reference
float (C# Reference)

The float keyword denotes a simple type that stores 32-bit floating-point values. The following table shows the precision and approximate range for the float type.

Type Approximate range Precision .NET Framework type

float

±1.5 × 10−45 to ±3.4 × 1038

7 digits

System.Single

By default, a real numeric literal on the right-hand side of the assignment operator is treated as double. Therefore, to initialize a float variable, use the suffix f or F, like this:

        float x = 3.5F;

If you do not use the suffix in the previous declaration, you will get a compilation error because you are attempting to store a double value into a float variable.

You can mix numeric integral types and floating-point types in an expression. In this case, the integral types are converted to floating-point types. The evaluation of the expression is performed according to the following rules:

  • If one of the floating-point types is double, the expression evaluates to double or bool in the case of relational or Boolean expressions.

  • If there is no double type in the expression, the expression evaluates to float or bool in the case of relational or Boolean expressions.

A floating-point expression can contain the following sets of values:

  • Positive and negative zero

  • Positive and negative infinity

  • Not-a-Number value (NaN)

  • The finite set of nonzero values

For more information on these values, refer to IEEE Standard for Binary Floating-Point Arithmetic, available on the Web site http://www.ieee.org/.

In the following example, an int, a short, and a float are included in a mathematical expression giving a float result. Notice that there is no double in the expression.

// keyword_float.cs
// Mixing types in expressions
using System;
class MixedTypes 
{
    static void Main() 
    {
        int x = 3;
        float y = 4.5f;
        short z = 5;
        Console.WriteLine("The result is {0}", x * y / z); 
    }
}
The result is 2.7

For more information, see the following sections in the C# Language Specification:

  • 4.1.6 Floating Point Types

  • 6.2.1 Explicit Numeric Conversions

Tags What's this?: Add a tag
Community Content   What is Community Content?
Add new content RSS  Annotations
Processing
© 2009 Microsoft Corporation. All rights reserved. Terms of Use | Trademarks | Privacy Statement
Page view tracker