Sdílet prostřednictvím


Explicitní číselné tabulky převody (C#-Reference)

Explicitní převod číselných lze převést libovolný číselný typ na jakékoli jiné numerický typ, pro který neexistuje žádná implicitní převod pomocí výrazem přetypování.Následující tabulka uvádí tyto převody.

Další informace o převodech naleznete v Obsazení a převody typu (Příručka programování C#).

Od

Akce

sbyte

byte, ushort, uint, ulong nebo char

byte

Sbytenebochar

short

sbyte, byte, ushort, uint, ulong, or char

ushort

sbyte, byte, short, or char

int

sbyte, byte, short, ushort, uint, ulong,or char

uint

sbyte, byte, short, ushort, int, or char

long

sbyte, byte, short, ushort, int, uint, ulong, or char

ulong

sbyte, byte, short, ushort, int, uint, long, or char

char

sbyte, byte, or short

float

sbyte, byte, short, ushort, int, uint, long, ulong, char,or decimal

double

sbyte, byte, short, ushort, int, uint, long, ulong, char, float,or decimal

decimal

sbyte, byte, short, ushort, int, uint, long, ulong, char, float, or double

Poznámky

  • Explicitní převod číselných může způsobit ztrátu přesnosti nebo výsledek v throwing výjimky.

  • Při převodu decimal hodnota integrálního typu tato hodnota se zaokrouhlí směrem k nule na nejbližší integrální hodnota.Pokud výsledný integrální hodnota je mimo rozsah typu určení OverflowException je vyvolána.

  • Při převodu z double nebo float hodnota integrálního typu hodnota je zkrácen.Pokud výsledná integrální hodnota je mimo rozsah cílové hodnoty, výsledek závisí na kontrolu kontextu přetečení.Kontrolované kontextu OverflowException je vyvolána při Nekontrolovaná kontextu, výsledkem je nespecifikované hodnoty typu místa určení.

  • Při převodu double na float, double hodnota je zaokrouhlena na nejbližší float hodnotu.Pokud double hodnota je příliš malé nebo příliš velké a nevejde se do cílového typu výsledek bude nula nebo nekonečno.

  • Při převodu float nebo double na decimal, zdrojová hodnota je převedena na decimal znázornění a zaokrouhleny na nejbližší číslo po měsíci desetinné místo potřeby.V závislosti na hodnotě zdrojovou hodnotu může nastat některý z následujících výsledků:

    • Pokud zdrojová hodnota je příliš malá, znázorněno jako decimal, výsledek bude roven nule.

    • Pokud zdrojová hodnota NaN (není číslo), nekonečno, nebo příliš velké, znázorněno jako decimal, OverflowException je vyvolána.

  • Při převodu decimal na float nebo double, decimal hodnota je zaokrouhlena na nejbližší double nebo float hodnotu.

Další informace o explicitní převod viz explicitní specifikace jazyka C#.Další informace o získání přístupu spec najdete Specifikace jazyka C#.

Viz také

Referenční dokumentace

Obsazení a převody typu (Příručka programování C#)

Operátor () (C#-Reference)

Nedílnou tabulky typy (C#-Reference)

Předdefinované typy (C#-Reference)

Implicitní číselné tabulky převody (C#-Reference)

Koncepty

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

Další zdroje

C#-Reference