English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

C# Konstante

Konstanten sind feste Werte, die während der Ausführung des Programms nicht geändert werden. Konstanten können jeden Basistyp sein, wie zum Beispiel Ganzzahlkonstanten, Fließkommaconstanten, Zeicherkonstanten oder Stringkonstanten, sowie Enumkonstanten.

Konstanten können wie reguläre Variablen behandelt werden, ihre Werte können jedoch nach der Definition nicht geändert werden.

Ganzzahlkonstante

Ganzzahlkonstanten können Dezimal-, Oktal- oder Hexadezimalzahlen sein. Der Präfix gibt die Basis an: 0x oder 0X für Hexadezimal, 0 für Oktal, ohne Präfix für Dezimal.

Ganzzahlkonstanten können auch Suffix haben, die eine Kombination aus U und L sein können, wobei U und L für unsigned und long stehen. Suffix können groß oder klein geschrieben sein und können in beliebiger Reihenfolge kombiniert werden.

Hier sind einige Beispiele für Ganzzahlkonstanten:

212         /* Gültig */
215u        /* Gültig */
0xFeeL      /* Gültig */
078         /* Ungültig:8 Keine Oktalziffer */
032UU       /* Ungültig: DuplizierterSuffix */

Hier sind Beispiele für verschiedene Arten von Ganzzahlkonstanten:

85         /* Dezimal */
0213       /* Oktal */
0x4b       /* Hexadezimal */
30         /* int */
30u        /* Unsigniertes int */
30l        /* long */
30ul       /* Unsigniertes long */

Fließkommazahlkonstante

Eine Fließkommazahlkonstante besteht aus einem ganzen Teil, einem Dezimalpunkt, einem Bruchteil und einem Exponententeil. Sie können Fließkommazahlenkonstanten in Dezimalform oder Exponentenform darstellen.

Hier sind einige Beispiele für Fließkommazahlenkonstanten:

3.14159       /* Gültig */
314159E-5L    /* Gültig */
510E          /* Ungültig: Unvollständiger Exponent */
210f          /* Ungültig: Keine Dezimalzahl oder Exponent */
.e55          /* Ungültig: Fehlende Ganzzahl oder Dezimalzahl */

Wenn in Dezimalform dargestellt, muss ein Dezimalpunkt, ein Exponent oder beide enthalten sein. Wenn in Exponentenform dargestellt, muss ein ganzer Teil, ein Bruchteil oder beide enthalten sein. Der signierte Exponent wird mit e oder E angegeben.

Zeichenkonstante

Zeichenkonstanten sind in Anführungszeichen gesetzt, z.B. 'x', und können in einfachen Zeichentypenvariablen gespeichert werden. Eine Zeichenkonstante kann ein reguläres Zeichen (z.B. 'x') sein, eine Escape-Sequenz (z.B. '\t') oder ein universelles Zeichen (z.B. '\u02C0').

In C# gibt es einige spezielle Zeichen, die eine besondere Bedeutung haben, wenn sie vor einem Backslash stehen, z.B. Zeilenumbruch (\n) oder Tabulator (\t). Hier sind einige Escape-Sequenzen aufgelistet:

Escape-SequenzBedeutung
\\\\-Zeichen
\''-Zeichen
\""-Zeichen
\??-Zeichen
\aAlarm oder Glocke
\bRücktaste-Taste (Backspace)
\fFormfeed-Zeichen (Form feed)
\nNewline-Zeichen (Newline)
\rReturn
\tHorizontaler Tabulator (Tab)
\vVertikaler Tabulator (Tab)
\oooOktalzahl mit ein bis drei Ziffern
\xhh . . .Hexadezimale Zahl mit einer oder mehreren Ziffern

Hier sind einige Beispiele für Escape-Sequenzen:

namespace EscapeChar
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello\tWorld\n\n");
            Console.ReadLine();
        }
    }
}

Wenn der obige Code kompiliert und ausgeführt wird, ergibt er das folgende Ergebnis:

Hello 	 World

Zeichenkettenkonstanten

Zeichenkettenkonstanten sind in doppelten Anführungszeichen "" oder in @"" eingeschlossen. Zeichenkettenkonstanten enthalten ähnliche Zeichen wie Zeichenkonstanten und können sein: reguläre Zeichen, Escape-Serien und universelle Zeichen

Bei der Verwendung von Zeichenkettenkonstanten kann eine sehr lange Zeile in mehrere Zeilen aufgeteilt werden, wobei die Teile durch Leerzeichen getrennt werden können.

Hier sind einige Beispiele für Zeichenkettenkonstanten. Die folgenden Formen stellen die gleiche Zeichenkette dar.

string a = "hello, world";                  // hello, world
string b = @"hello, world";               // hello, world
string c = "hello 	 world";               // hello		world
string d = @"hello 	 world";               // hello 	 world
string e = "Joe sagte \      // Joe sagte "Hallo" zu mir
string f = @"Joe sagte ""Hallo"" zu mir";   // Joe sagte "Hallo" zu mir
string g = "\\\\server\\share\\file.txt";   // \\server\share\file.txt
string h = @"\\server\share\file.txt";      // \\server\share\file.txt
string i = "one
two
three";
string j = @"one
two
three";

definiert

Konstanten werden mit const Die Syntax für die Definition einer Konstanten ist wie folgt:

const <data_type> <constant_name> = value;

Nachfolgender Code zeigt, wie man Konstanten in einem Programm definiert und verwendet:

Online-Beispiel

using System;
public class ConstTest 
{
    class SampleClass
    {
        public int x;
        public int y;
        public const int c1 = 5;
        public const int c2 = c1 + 5;
        public SampleClass(int p1, int p2) 
        {
            x = p1; 
            y = p2;
        }
    }
    static void Main()
    {
        SampleClass mC = new SampleClass(11, 22);
        Console.WriteLine("x = {0}, y = {1}", mC.x, mC.y);
        Console.WriteLine("c1 = {0}, c2 = {1} 
                          SampleClass.c1, SampleClass.c2);
    }
}

Wenn der obige Code kompiliert und ausgeführt wird, ergibt er das folgende Ergebnis:

x = 11, y = 22
c1 = 5, c2 = 10