Aracılığıyla paylaş


Deyimler (C# Programlama Kılavuzu)

Bir programın sürüyor eylemler deyimlerinde ifade edilir.Genel eylemleri değişkenleri bildirmek, değerler atayarak, koleksiyonlarına döngü ve dallanma için verilen koşula bağlı olarak kod bloğunu ya da başka bir yöntem çağırma içerir.Denetim akışı veya akış yürütme ifadeleri bir programda yürütüldüğü sırada denir.Denetim akışını çalıştırılan bir program, tepki nasıl program, çalışma zamanında aldığı giriş için verir bağlı olarak her zaman değişebilir.

Bir deyim, noktalı virgül sona eren kod tek bir satır veya tek satırlı ifadeleri bir blok içinde bir dizi oluşur.Bir deyimi bloğu {} ayraç içine alınır ve iç içe bloklar içerebilir.Aşağıdaki kod iki örnek olarak tek satırlı deyimleri ve çok satırlı deyim bloğunu gösterir:

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
*/

Deyimleri türleri

Aşağıdaki tabloda çeşitli ifadeleri C# ve daha fazla bilgi içeren konulara bağlantıları olan kendi ilişkili anahtar sözcükleri listeler:

Kategori

C# anahtar sözcükler / notes

Bildirim deyimleri

Yeni bir değişken veya sabit bir tanýmlama ifadesi tanıtır.Değişken bildiriminde isteğe bağlı olarak bir değer değişkenine atamak için kullanabilirsiniz.Sabit bildiriminde atama gereklidir.

İfade deyimi

Değeri hesaplamak deyimlerinin değeri bir değişkende saklamanız gerekir.

Seçim ifadelerini

Seçim ifadelerini kod, bir veya daha fazla belirtilen koşullara bağlı olarak farklı bölümlerini oluşturmak etkinleştirin.Daha ayrıntılı bilgi için aşağıdaki konulara bakın:

if, else, switch, case

Yineleme ifadeleri

Yineleme ifadelerini diziler gibi koleksiyonlar arasında döngü sağlamak veya belirli bir koşul yerine getirilene kadar aynı ifadeleri art arda gerçekleştirin.Daha ayrıntılı bilgi için aşağıdaki konulara bakın:

do, for, foreach, in, while

İfadeleri atlama

İfadeleri Aktarım Denetim kodu başka bir bölüme atla.Daha ayrıntılı bilgi için aşağıdaki konulara bakın:

break, continue, default, goto, return, yield

Özel durum işleme ifadeleri

Özel durum işleme ifadeleri çalıştırma sırasında oluşan özel durumları olağan biçimde kurtarmak etkinleştirin.Daha ayrıntılı bilgi için aşağıdaki konulara bakın:

throw, try-catch, try finally, try-catch-finally

Checked ve unchecked

Teslim ve denetlenmeyen ifadeler, sayısal işlemler sonucu elde edilen değeri tutmak için çok küçük olan bir değişken depolanan taşma neden izin verilip verilmeyeceğini belirtmek sağlar.Daha fazla bilgi için bkz: teslim ve denetlenmeyen.

await İfadesi

Yöntemi ile işaretler, zaman uyumsuz değiştiricisi, kullanabileceğiniz bekler yönteminde işleci.Ne zaman, en fazla kontrol bir await zaman uyumsuz yöntem ifadesinde, denetimi çağırana döndürür ve awaited görev tamamlanıncaya kadar askıya yöntemi sürüyor.Görev tamamlandığında, yürütme yönteminde devam edebilirsiniz.

Basit bir örnek için "Zaman uyumsuz yöntemleri" bölümüne bakın Yöntemler (C# Programlama Kılavuzu).Daha fazla bilgi için bkz. Async ve Await ile Zaman Uyumsuz Programlama (C# ve Visual Basic).

yield return İfadesi

Bir yineleyici bir liste veya bir dizi gibi bir koleksiyon üzerinde özel bir yineleme yapar.Bir yineleyici kullanan dönüşünden her öğe bir anda geri dönmek için deyim.Zaman bir yield return ifadesi ulaşıldığında, kod geçerli konumda hatırlanır.Yineleyici sonraki çağrıldığında yürütme o konumdan yeniden başlatılır.

Daha fazla bilgi için bkz. Yineleyiciler (C# ve Visual Basic).

fixed İfadesi

Fixed deyimini taşınabilen değişkeni yeniden konumlandırma gelen Çöp toplayıcı engeller.Daha fazla bilgi için bkz: sabit.

lock İfadesi

Lock ifadesi, bir defada yalnızca tek bir iş parçacığı için kod bloklarını erişimi sınırlamak sağlar.Daha fazla bilgi için bkz: kilit.

Etiketli ifade

Bir deyimi bir etiket verin ve daha sonra goto etiketli ifadesine atlamak için anahtar sözcük.(Aşağıdaki satırda örneğe bakın.)

Boş deyim

Boş deyim tek bir noktalı virgül oluşur.Bunu yapmaz ve burada bir ifade gereklidir ancak herhangi bir işlem yapılması gereken yerlerde kullanılabilir.Aşağıdaki örneklerde, iki boş bir deyim kullanımları gösterilmektedir:

Gömülü ifadeleri

Bazı deyimler de dahil olmak üzere, yapmak, sırada, için, ve foreach, onları izleyen bir katıştırılmış ifade her zaman vardır.Bu katıştırılmış ifade, tek bir deyim veya birden çok ifadeleri deyim bloğunu ayraçlar {} tarafından alınmış olabilir.Tek satırlı bile gömülü ifadeleri ayraçlar {} aşağıdaki örnekte gösterildiği gibi içine alınabilir:

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

Ayraçlar {} içine katıştırılmış bir deyimi declaration deyimi veya etiketli bir deyim olamaz.Bu, aşağıdaki örnekte gösterilmiştir:

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

Hatayı düzeltmek için bir blok içinde katýþtýrýlmýþ ifade koyun:

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

İç içe geçmiş deyiminin blokları

Aşağıdaki kodda gösterildiği gibi deyimi bloğu yuvalanabilir:

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

}
return "Not found.";

Erişilemeyen ifadeler

Derleyici denetim akışını hiçbir zaman hiçbir koşulda belirli bir ifadenin ulaşmak belirlerse, bu uyarı CS0162, aşağıdaki örnekte gösterildiği gibi üretecektir:

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

İlgili Bölümler

C# dil belirtimi

Daha fazla bilgi edinmek için, bkz. C# Dil Belirtimi. Dil belirtimi, C# sözdizimi ve kullanımı için kesin bir kaynaktır.

Ayrıca bkz.

Kavramlar

C# Programlama Kılavuzu