krátké (C#-Reference)
short Klíčové slovo označuje nedílnou datový typ, který ukládá hodnoty podle velikosti a oblasti, které jsou uvedeny v následující tabulce.
Type |
Rozsah |
Size |
typ .NET Framework |
---|---|---|---|
short |
-32,768 do 32 767 |
Celé 16bitové číslo |
Literály
Můžete deklarovat a inicializovat short proměnné následujícím způsobem:
short x = 32767;
V předchozích prohlášení literál celého 32767 implicitně převeden z int na short.Pokud literál celé nevejdou short umístění úložiště, dojde k chybě kompilace.
Osazení musí při přetížení volání metody.Zvažte například následující přetížení metody, které používají short a int parametry:
public static void SampleMethod(int i) {}
public static void SampleMethod(short s) {}
Použití short cast zaručuje, že správný typ je názvem, například:
SampleMethod(5); // Calling the method with the int parameter
SampleMethod((short)5); // Calling the method with the short parameter
Převody
Existuje předdefinované implicitní převod z short na int, dlouhý, plovoucí, dvojité, nebo desetinné.
Nelze implicitně převést nonliteral číselné typy větší velikost úložiště na short (viz Nedílnou tabulky typy (C#-Reference) pro velikosti úložiště nedílnou typů).Zvažte například následující dva short proměnné x a y:
short x = 5, y = 12;
Uvedený přiřazovací ohlásí chybu kompilace, protože vyhodnocen jako aritmetický výraz na pravé straně operátoru přiřazení int ve výchozím nastavení.
short z = x + y; // Error: no conversion from int to short
Chcete-li tento problém vyřešit, použijte osazení:
short z = (short)(x + y); // OK: explicit conversion
Je však možné použít následující příkazy, pokud cílová proměnná má stejnou velikost nebo větší velikost úložiště:
int m = x + y;
long n = x + y;
Implicitní převod z typů s pohyblivou čárkou je short.Například následující příkaz vygeneruje chybu kompilátoru Pokud explicitní cast:
short x = 3.0; // Error: no implicit conversion from double
short y = (short)3.0; // OK: explicit conversion
Informace o aritmetické výrazy s typy nedílnou a smíšené typy s plovoucí desetinnou čárkou, viz plovoucí a dvojité.
Další informace o pravidlech implicitní převod číselných naleznete Implicitní číselné tabulky převody (C#-Reference).
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
Nedílnou tabulky typy (C#-Reference)
Předdefinované typy (C#-Reference)
Implicitní číselné tabulky převody (C#-Reference)
Explicitní číselné tabulky převody (C#-Reference)