Sdílet prostřednictvím


sizeof (Referenční dokumentace jazyka C#)

Lze získat velikost v bajtech pro typ nespravované.Nespravovanými typy zahrnují předdefinované typy, které jsou uvedeny v následující tabulce a následující:

  • Výčtové typy

  • Ukazatele.

  • Uživatelem definované struktur, které neobsahují žádná pole nebo vlastnosti, které jsou typy odkazů

Následující příklad ukazuje, jak načíst velikosti int:

// Constant value 4:
int intSize = sizeof(int); 

Poznámky

Počínaje verzí 2.0 C#, použití sizeof na předdefinované typy již vyžaduje, aby nebezpečných režim použít.

sizeof Operátor nemůže být přetížena.Hodnoty vrácené sizeof operátor jsou typu int.Následující tabulka zobrazuje konstantní hodnoty, které jsou nahrazeny sizeof výrazy, které mají určité předdefinované typy jako operandy.

Výraz

Konstanta

sizeof(sbyte)

1

sizeof(byte)

1

sizeof(short)

2

sizeof(ushort)

2

sizeof(int)

4

sizeof(uint)

4

sizeof(long)

8

sizeof(ulong)

8

sizeof(char)

2 (Unicode)

sizeof(float)

4

sizeof(double)

8

sizeof(decimal)

16

sizeof(bool)

1

Pro všechny typy včetně struktur, sizeof operátor lze použít pouze v blokuje nebezpečný kód.Přestože lze použít Marshal.SizeOf metoda, vrátí tato metoda hodnotu není vždy stejný jako hodnotu vrácenou sizeof.Marshal.SizeOfVrátí velikost po typ byl zařazen, že sizeof vrátí velikost byla přidělena společný jazykový modul runtime, včetně čalounění.

Příklad

class MainClass
    {
        // unsafe not required for primitive types 
        static void Main()
        {
            Console.WriteLine("The size of short is {0}.", sizeof(short));
            Console.WriteLine("The size of int is {0}.", sizeof(int));
            Console.WriteLine("The size of long is {0}.", sizeof(long));
        }
    }
    /*
    Output:
        The size of short is 2.
        The size of int is 4.
        The size of long is 8.
    */

Specifikace jazyka C#

Další informace najdete 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é

Referenční dokumentace

Klíčová slova jazyka C#

Klíčová slova operátorů (Referenční dokumentace jazyka C#)

enum (Referenční dokumentace jazyka C#)

Nezabezpečený kód a ukazatele (Průvodce programováním v C#)

Struktury (Průvodce programováním v C#)

Konstanty (Průvodce programováním v C#)

Koncepty

Průvodce programováním v C#

Další zdroje

Referenční dokumentace jazyka C#