Aracılığıyla paylaş


<< İşleç (C# Reference)

Sol shift işlecinin (<<), birinci işlenenin sol, ikinci işlenen tarafından belirtilen bit sayısı olarak kaydırır.İkinci işlenenin tür olması gereken bir int veya önceden tanımlanmış bir örtülü sayısal dönüştürme için olan bir tür int.

Notlar

Birinci işlenenin ise bir int veya uint (32-bit miktarı) ÜST KRKT sayımı düşük sıralı beş biti tarafından ikinci işlenen verilir.Diğer bir deyişle gerçek shift 0-31 bit sayısıdır.

Birinci işlenenin ise bir uzun veya ulong (64-bit miktarı) ÜST KRKT sayımı düşük sıralı altı bitleri kullanılarak ikinci işlenenin verilir.Diğer bir deyişle gerçek ÜST KRKT sayımı 0-63 bittir.

Sonra shift birinci işlenenin tür aralığı içinde olmayan herhangi bir yüksek sıralı bit değil atılır ve alt sıra boş bitleri sıfır dolgulu.Shift işlemleri taşmaları asla neden.

Kullanıcı tanımlı türler tekrar << işleci (bkz: işleç); Kullanıcı tanımlı türü ilk işleneninin türü olmalıdır ve ikinci işlenenin tür olmalıdır int.İkili işleç aşırı karşılık gelen atama işleci varsa, ayrıca dolaylı olarak fazla yüklenmiş olur.

Örnek

class MainClass11
{
    static void Main()
    {
        int i = 1;
        long lg = 1;
        // Shift i one bit to the left. The result is 2.
        Console.WriteLine("0x{0:x}", i << 1);
        // In binary, 33 is 100001. Because the value of the five low-order
        // bits is 1, the result of the shift is again 2. 
        Console.WriteLine("0x{0:x}", i << 33);
        // Because the type of lg is long, the shift is the value of the six
        // low-order bits. In this example, the shift is 33, and the value of
        // lg is shifted 33 bits to the left.
        //     In binary:     10 0000 0000 0000 0000 0000 0000 0000 0000 
        //     In hexadecimal: 2    0    0    0    0    0    0    0    0
        Console.WriteLine("0x{0:x}", lg << 33);
    }
}
/*
Output:
0x2
0x2
0x200000000
*/

Comments

Dikkat i<<1 ve i<<33 çünkü aynı alt sıra beş bitinde 1 ve 33 aynı sonucu verir.

Ayrıca bkz.

Başvuru

C# işleçleri

Kavramlar

C# Programlama Kılavuzu

Diğer Kaynaklar

C# Başvurusu