Dezimalliteral in C#

Fil Zjazel Romaeus Villegas 12 Oktober 2023
Dezimalliteral in C#

Beim Initialisieren von Variablen in C# müssen Sie möglicherweise den Datentyp explizit angeben, den Sie für numerische Datentypen beabsichtigen. Wenn nicht, werden sie als Standarddatentypen wie Ganzzahlen oder Doubles behandelt. Es kann Kompilierungsfehler verursachen, wenn es weggelassen wird, oder Fehler während der Berechnung.

Das Dezimalliteral

Beim Initialisieren einer Dezimalzahl müssen Sie wie folgt vorgehen:

decimal decimalValue = 12.0M;

Wenn Sie das Dezimalliteral M nicht hinzufügen, wird der numerische Wert als Double behandelt und führt zu Fehlern. Sie können sowohl Groß- als auch Kleinschreibung verwenden. Der Grund, warum das Dezimal-Suffix M ist und nicht ein anderer Buchstabe wie D, liegt darin, dass der doppelte Datentyp bereits den Buchstaben D angenommen hat.

Beispiel:

using System;

namespace Literal_Example {
  class Program {
    static void Main(string[] args) {
      // Initialize the integer variable a
      var decimalValue = 10.0M;
      Console.WriteLine("First Variable: " + decimalValue.ToString() +
                        "\nData Type: " + decimalValue.GetType().Name + "\n");

      var floatValue = 10.0F;
      Console.WriteLine("Second Variable: " + floatValue.ToString() +
                        "\nData Type: " + floatValue.GetType().Name + "\n");

      var doubleValue = 10.0;
      Console.WriteLine("Third Variable: " + doubleValue.ToString() +
                        "\nData Type: " + doubleValue.GetType().Name + "\n");

      Console.ReadLine();
    }
  }
}

Im obigen Beispiel haben wir mit var implizit drei verschiedene Variablen deklariert, die aber jeweils ein anderes oder gar kein Suffix hatten. Sie können anhand der auf der Konsole ausgegebenen Ergebnisse beobachten, wie sich dadurch der Datentyp der Variablen ändert.

Ausgabe:

First Variable: 10.0
Data Type: Decimal

Second Variable: 10
Data Type: Single

Third Variable: 10
Data Type: Double

Verwandter Artikel - Csharp Decimal