double (C# リファレンス)double (C# Reference)

double キーワードは、64 ビット浮動小数点値を格納する単純な型を示します。The double keyword signifies a simple type that stores 64-bit floating-point values. 次の表では、double 型の有効桁数とおおよその範囲を示します。The following table shows the precision and approximate range for the double type.

Type おおよその範囲Approximate range 有効桁数Precision .NET 型.NET type
double ±5.0 × 10−324 - ±1.7 × 10308±5.0 × 10−324 to ±1.7 × 10308 15-16 桁15-16 digits System.Double


既定では、代入演算子の右辺にある実数値リテラルは double として扱われます。By default, a real numeric literal on the right side of the assignment operator is treated as double. ただし、整数を double として処理する場合、次のようにサフィックスの d または D を使用します。However, if you want an integer number to be treated as double, use the suffix d or D, for example:

double x = 3D;


整数型と浮動小数点型を 1 つの式の中の混在させることができます。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:

  • 浮動小数点型の 1 つが double の場合、式は double または bool (関係式またはブール式の場合) と評価されます。If one of the floating-point types is double, the expression evaluates to double, or bool in relational or Boolean expressions.

  • 式に double 型が含まれない場合は、float または bool (関係式またはブール式の場合) と評価されます。If there is no double type in the expression, it evaluates to float, or bool in 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 (NaN) 値。Not-a-Number value (NaN).

  • ゼロ以外の値の有限のセット。The finite set of nonzero values.

これらの値について詳しくは、IEEE の Web サイトで入手できるバイナリ浮動小数点演算の IEEE 標準に関する資料をご覧ください。For more information about these values, see IEEE Standard for Binary Floating-Point Arithmetic, available on the IEEE Web site.


次の例では、intshortfloatdouble がまとめて追加され、結果として double になります。In the following example, an int, a short, a float, and a double are added together giving a double result.

// Mixing types in expressions
class MixedTypes
    static void Main()
        int x = 3;
        float y = 4.5f;
        short z = 5;
        double w = 1.7E+3;
        // Result of the 2nd argument is a double:
        Console.WriteLine("The sum is {0}", x + y + z + w);
// Output: The sum is 1712.5

C# 言語仕様C# language specification

詳細については、「C# 言語の仕様」を参照してください。For more information, see the C# Language Specification. 言語仕様は、C# の構文と使用法に関する信頼性のある情報源です。The language specification is the definitive source for C# syntax and usage.

参照See Also

C# リファレンスC# Reference
C# プログラミング ガイドC# Programming Guide
C# のキーワードC# Keywords
既定値の一覧表Default Values Table
組み込み型の一覧表Built-In Types Table
浮動小数点型の一覧表Floating-Point Types Table
暗黙的な数値変換の一覧表Implicit Numeric Conversions Table
明示的な数値変換の一覧表Explicit Numeric Conversions Table