sizeof (C#-Reference)
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 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é
Referenční dokumentace
Operátor klíčová slova (C#-Reference)
Nebezpečný kód a ukazatele (Příručka programování C#)
Struktur (Příručka programování C#)
Konstanty (Příručka programování C#)