Udostępnij za pośrednictwem


Instrukcje (Podręcznik programowania C#)

Akcje, które program ma wyrażone są w sprawozdaniu.Wspólne działania obejmują deklarowania zmiennych, przypisywanie wartości, wywołanie metody, pętli kolekcje i rozgałęzienia do jednej lub drugiej bloku kodu, w zależności od danego warunku.Kolejność, w której instrukcje są wykonywane w programie jest nazywany przepływ sterowania lub przepływ wykonanie.Przepływ sterowania mogą różnić się każdym razem, gdy program zostanie uruchomiony, w zależności od tego, jak program reaguje na dane wejściowe otrzymuje w czasie wykonywania.

Instrukcja może składać się z jednej linii kodu, który kończy się średnikiem lub seria pojedynczej linii instrukcji w bloku.Blok instrukcji jest ujęty w nawiasach {} i może zawierać zagnieżdżone bloki.Poniższy kod przedstawia dwa przykłady instrukcji jednowierszowym i wielowierszowym instrukcja blok:

    static void Main()
    {
        // Declaration statement.
        int counter;

        // Assignment statement.
        counter = 1;

        // Error! This is an expression, not an expression statement.
        // counter + 1; 

        // Declaration statements with initializers are functionally
        // equivalent to  declaration statement followed by assignment statement:         
        int[] radii = { 15, 32, 108, 74, 9 }; // Declare and initialize an array.
        const double pi = 3.14159; // Declare and initialize  constant.          

        // foreach statement block that contains multiple statements.
        foreach (int radius in radii)
        {
            // Declaration statement with initializer.
            double circumference = pi * (2 * radius);

            // Expression statement (method invocation). A single-line
            // statement can span multiple text lines because line breaks
            // are treated as white space, which is ignored by the compiler.
            System.Console.WriteLine("Radius of circle #{0} is {1}. Circumference = {2:N2}",
                                    counter, radius, circumference);

            // Expression statement (postfix increment).
            counter++;

        } // End of foreach statement block
    } // End of Main method body.
} // End of SimpleStatements class.
/*
   Output:
    Radius of circle #1 = 15. Circumference = 94.25
    Radius of circle #2 = 32. Circumference = 201.06
    Radius of circle #3 = 108. Circumference = 678.58
    Radius of circle #4 = 74. Circumference = 464.96
    Radius of circle #5 = 9. Circumference = 56.55
*/

Typy instrukcji

Poniższa tabela zawiera listę różnych rodzajów instrukcji w C# i ich skojarzone słowa kluczowe, łącza do tematów, które zawierają więcej informacji:

Kategoria

Słowa kluczowe języka C# / notes

Instrukcje deklaracji

Instrukcja deklaracji wprowadza nową zmienną lub stałą.Deklaracja zmiennej można opcjonalnie przypisać wartość do zmiennej.W deklaracji stałej przydział jest wymagane.

Instrukcje wyrażeń

Instrukcje wyrażeń, które obliczają wartości wartość muszą być przechowywane w zmiennej.

Wybór instrukcji

Wybór instrukcje umożliwiają gałęzi do różnych sekcji kodu, w zależności od jednego lub więcej określonych warunków.Aby uzyskać więcej informacji zobacz następujące tematy:

if, else, switch, case

Instrukcje iteracji

Instrukcje iteracji umożliwiają pętli kolekcje, takie jak tablice, lub wykonać ten sam zestaw instrukcji wielokrotnie, dopóki nie zostanie spełniony określony warunek.Aby uzyskać więcej informacji zobacz następujące tematy:

do, for, foreach, in, while

Instrukcje skoku

Instrukcje przeniesienia sterowania należy przejść do innej części kodu.Aby uzyskać więcej informacji zobacz następujące tematy:

break, continue, default, goto, return, yield

Instrukcje obsługi wyjątków

Instrukcje obsługi wyjątku umożliwiają bezpiecznie odzyskać z wyjątkowych warunków, które występują w czasie wykonywania.Aby uzyskać więcej informacji zobacz następujące tematy:

rzut, try-catch, try-finally, try-catch-finally

Sprawdzonych i niesprawdzonych

Sprawdzane i zaznaczone instrukcje pozwalają określić, czy operacje liczbowe mogą spowodować przepełnienie, kiedy wynik jest przechowywana w zmiennej, która jest zbyt mały, aby pomieścić na wartość wynikową.Aby uzyskać więcej informacji, zobacz sprawdzane i niesprawdzony.

await Instrukcji

Jeśli oznaczysz metoda z asynchroniczne modyfikator, można użyć czekają na operator w metodzie.Kiedy sterowania osiąga await wyrażenie w metoda komunikacji asynchronicznej, sterowanie powraca do wywołującego i postępu w metodzie jest zawieszone aż do zakończenia zadania oczekiwany.Po wykonaniu zadania w metodzie wznowić wykonywanie.

Prosty przykład, zobacz sekcję "Async metody" Metody (Podręcznik programowania C#).Aby uzyskać więcej informacji, zobacz Asynchroniczne programowania przy użyciu asynchronicznej i poczekać (C# i Visual Basic).

yield return Instrukcji

Iterację wykonuje niestandardowe iteracji przez kolekcję, takie jak listy lub tablicy.Iterację używa zwróceniu przekazu instrukcja zwraca każdy jeden element naraz.Gdy yield return instrukcja zostanie osiągnięty, bieżącej lokalizacji w kodzie jest zapamiętany.Wykonanie ponownego uruchomienia z tej lokalizacji po sterująca nazywa się następnym razem.

Aby uzyskać więcej informacji, zobacz Iteratory (C# i Visual Basic).

fixed Instrukcji

Ustalonej instrukcji zapobiega przenoszeniu ruchome zmiennej garbage collector.Aby uzyskać więcej informacji, zobacz stałej.

lock Instrukcji

Instrukcja lock umożliwia ograniczanie dostępu do bloków kodu, aby tylko jeden wątek na raz.Aby uzyskać więcej informacji, zobacz Blokada.

Sprawozdania z etykietami

Można podać etykietę, a następnie użyć goto słów kluczowych, aby przejść do instrukcji etykietami.(Zobacz przykład w następujący wiersz).

Instrukcja pusta

Instrukcja pusta składa się z pojedynczego średnik.To nic nie robi i mogą być używane w miejscach, gdzie wymagane jest oświadczenie, ale musi być wykonywane żadne działania.Następujące przykłady przedstawiają dwa używa pustej instrukcji:

Osadzone instrukcje

Niektóre instrukcji, łącznie z czy, a, dla, i foreach, zawsze mają osadzone oświadczenie, że podąża za nimi.Ten osadzony instrukcja może być pojedynczą instrukcją lub wiele instrukcji ujęta w nawiasy klamrowe {} w bloku instrukcji.Osadzone instrukcje nawet pojedynczej linii mogą być ujęte w nawiasach {}, jak pokazano w poniższym przykładzie:

// Recommended style. Embedded statement in  block.
foreach (string s in System.IO.Directory.GetDirectories(
                        System.Environment.CurrentDirectory))
{
    System.Console.WriteLine(s);
}

// Not recommended.
foreach (string s in System.IO.Directory.GetDirectories(
                        System.Environment.CurrentDirectory))
    System.Console.WriteLine(s);

Osadzona instrukcja, nie jest ujęte w nawiasach {} nie może być deklaracja lub etykietą instrukcja.Jest to zademonstrowane w poniższym przykładzie:

if(pointB == true)
    //Error CS1023:
    int radius = 5; 

Umieścić osadzona instrukcja w bloku, aby naprawić błąd:

if (b == true)
{
    // OK:
    System.DateTime d = System.DateTime.Now;
    System.Console.WriteLine(d.ToLongDateString());
}

Zagnieżdżone bloki instrukcji

Instrukcja można zagnieżdżać, jak pokazano w poniższym kodzie:

foreach (string s in System.IO.Directory.GetDirectories(
    System.Environment.CurrentDirectory))
{
    if (s.StartsWith("CSharp"))
    {
        if (s.EndsWith("TempFolder"))
        {
            return s;
        }
    }

}
return "Not found.";

Oświadczenia jest nieosiągalny

Kompilator Określa przepływ sterowania nigdy nie dotrą określonych instrukcji w żadnych okolicznościach, powoduje wygenerowanie ostrzeżenia CS0162, jak pokazano w poniższym przykładzie:

// An over-simplified example of unreachable code.
const int val = 5;
if (val < 4)
{
    System.Console.WriteLine("I'll never write anything."); //CS0162
}

Sekcje pokrewne

Specyfikacja języka C#

Aby uzyskać więcej informacji, zobacz Specyfikacja języka C#. Specyfikacja języka to najlepsze źródło informacji dotyczących składni i zastosowania języka C#.

Zobacz też

Koncepcje

Podręcznik programowania C#