Sdílet prostřednictvím


Příkazy (Příručka programování C#)

Akce, které má program jsou vyjádřeny v příkazech.Běžné akce patří deklarování proměnných, přiřazení hodnoty, volání metody opakování prostřednictvím kolekce a větvení jeden nebo druhý blok kódu v závislosti na danou podmínku.Pořadí, ve kterém se příkazy jsou spouštěny v programu se nazývá tok řízení toku spouštění.Tok řízení se může lišit při každém spuštění programu v závislosti na tom, jak program reaguje na vstup obdrží za běhu.

Prohlášení může sestávat z jediného řádku kódu, který končí středníkem nebo řada příkazů na jeden řádek v bloku.Blok příkazu je uzavřený v hranatých závorkách {} a může obsahovat vnořené bloky.Následující kód ukazuje dva příklady příkazů jednořádkové a víceřádkové příkaz blokovat:

    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 výkazů

Následující tabulka uvádí různé typy příkazů v jazyce C# a jejich přidružené klíčová slova s odkazy na témata, které obsahují další informace:

Kategorie

Klíčová slova jazyka C# / poznámky

Příkazy deklarace

Prohlášení prohlášení zavádí novou proměnnou nebo konstantu.Deklarace proměnné Volitelně můžete přiřadit hodnotu proměnné.Deklarace konstanty je vyžadován přiřazení.

Příkazy výrazů

Příkazy výrazů, které počítají hodnotu musí ukládat hodnotu proměnné.

Příkazy pro výběr

Výběr příkazy umožňují větví různých částí kódu podle jednoho nebo více zadaných podmínek.Další informace naleznete v následujících tématech:

if, else, switch, case

Příkazy iterace

Příkazy iterace můžete procházet kolekce jako matice nebo opakovaně provádět stejnou sadu příkazů, dokud je splněna zadaná podmínka.Další informace naleznete v následujících tématech:

do, for, foreach, in, while

Přeskočit příkazy

Řízení přenosu příkazy Přejít na jinou část kódu.Další informace naleznete v následujících tématech:

break, continue, default, goto, return, yield

Příkazy pro zpracování výjimek

Příkazy pro zpracování výjimek umožňují vynuceně obnovit z výjimečných podmínek, které nastanou v době běhu.Další informace naleznete v následujících tématech:

vyvolat, try-catch, try-finally, konstrukce try-catch-finally

Kontrolováno a nekontrolované

Zkontrolovat a nekontrolované příkazy umožňují určit, zda číselné operace mohou způsobit přetečení, když výsledek je uložen v proměnné, která je výsledná hodnota příliš malá.Další informace naleznete v kontroluje a Nekontrolovaná.

await Prohlášení

Pokud označíte metodu s asynchronní modifikátor, můžete použít vyčkání operátor v metodě.Při řízení dosáhne await výraz v asynchronní metoda vrací řízení volajícímu a pokroku v metodě je pozastavena až do dokončení úkolu awaited.Po dokončení úkolu může pokračovat spuštění metody.

Jednoduchý příklad naleznete v části "Asynchronní metody" Metody (Příručka programování C#).Další informace naleznete v tématu Asynchronní asynchronní pro programování a očekávat (C# a Visual Basic).

yield return Prohlášení

Iterace provádí vlastní iteraci přes kolekci, seznam nebo pole.Iterace používá příkazu yield return příkaz vrátit každý prvek v čase.Když yield return prohlášení je dosaženo, je zapamatované aktuální umístění v kódu.Spuštění při příštím volání iterace restartován z tohoto umístění.

Další informace naleznete v tématu U iterátorů (C# a Visual Basic).

fixed Prohlášení

Přemístění pohyblivé proměnné příkazu fixed zabraňuje uvolňování.Další informace naleznete v pevnou.

lock Prohlášení

Příkaz lock umožňuje omezit přístup k bloky kódu pouze jedním vláknem současně.Další informace naleznete v Zámek.

Příkazy s popisky

Můžete dát příkaz popisek a použít goto klíčové slovo označené příkazu Přejít.(Viz příklad v následujícím řádku).

Prázdný příkaz

Prázdný příkaz obsahuje jeden středník.Neprovede žádnou akci a lze v místech, kde je vyžadováno prohlášení ale je nutné provést žádnou akci.Následující příklady ukazují použití dvou prázdný příkaz:

Vložených příkazů

Některé příkazy včetně 370s1zax(v=vs.110).md, Při, pro, a foreach, mají vždy vložený příkaz, který je následuje.Tento vložený příkaz může být prohlášení jednoho nebo více příkazů do hranatých závorek {} příkaz bloku.Ani jeden řádek vložených příkazů mohou být uzavřeny v závorkách {}, jak je znázorněno v následujícím příkladu:

// 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);

Vložený příkaz, který není uzavřený v hranatých závorkách {} nemůže být prohlášení prohlášení nebo prohlášení, s popisky.To je ukázáno v následujícím příkladu:

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

Vložte vložený příkaz v bloku oprava chyby:

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

Vnořené bloky prohlášení

Mohou být vnořené bloky prohlášení, jak je znázorněno v následujícím kódu:

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

}
return "Not found.";

Nedostupné příkazy

V případě, že kompilátor určí, tok řízení může nikdy dosáhnout určitého příkazu za žádných okolností, vygeneruje upozornění CS0162, jak je znázorněno v následujícím příkladu:

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

Související oddíly

Specifikace jazyka C#

Další informace naleznete v tématu Specifikace jazyka C#. Specifikace jazyka je úplným a rozhodujícím zdrojem pro syntaxi a použití jazyka C#.

Viz také

Koncepty

Příručka programování C#