Proměnná je místo v paměti, kam můžeme uložit nějakou hodnotu (data).
Každá proměnná má svůj datový typ. Ten určuje, jaký typ dat lze v proměnné uchovávat (číslo, text, datum apod.).
Základní datové typy (někdy též primitivní, případně vestavěné neboli built-in types) jsou v C# několikéreho druhu:
Mezi vestavěné datové typy patří ještě objekt (object), avšak zde se nejedná o primitivní datový typ.
Následující tabulka popisuje některé základní datové typy v C#, jejich názvy v .NETu a kolik místa v paměti je potřeba pro jejich uložení.
Klíčové slovo | Název v .NET | Velikost v RAM | Popis (rozsah) |
---|---|---|---|
sbyte | System.SByte | 1 byte | Celé číslo se znaménkem od -128 do +127 |
byte | System.Byte | 1 byte | Celé číslo bez znaménka od 0 do 255 |
short | System.Int16 | 2 byty | Celé číslo se znaménkem od -32768 do +32767 |
ushort | System.UInt16 | 2 byty | Celé číslo bez znaménka od 0 do 65535 |
int | System.Int32 | 4 byty | Celé číslo se znaménkem od -2 147 483 648 do +2 147 483 647 |
uint | System.UInt32 | 4 byty | Celé číslo bez znaménka od 0 do 4 294 967 295 |
long | System.Int64 | 8 bytů | Celé číslo se znaménkem od cca minus 10 trilionů do cca plus 10 trilionů |
ulong | System.UInt64 | 8 bytů | Celé číslo bez znaménka od nuly do cca plus 20 trilionů |
float | System.Single | 4 byty | Desetinné číslo s plovoucí řádovou čárkou v rozsahu až 1038 s až 9 platnými číslicemi |
double | System.Double | 8 bytů | Desetinné číslo s plovoucí řádovou čárkou v rozsahu až 10308 s až 17 platnými číslicemi |
decimal | System.Decimal | 16 bytů | Desetinné číslo s plovoucí řádovou čárkou v rozsahu až 1028 s až 29 platnými číslicemi |
bool | System.Boolean | 1 byte | Logická hodnota "pravda" (true) a "nepravda" (false); na reprezentaci stačí 1 bit |
char | System.Char | 2 byty | Znak v kódování Unicode UTF-16 v rozsahu U+0000 až U+FFFF |
string | System.String | (různá) | Textový řetězec (de facto pole hodnot typu char), místo v paměti závisí na jeho délce |
object | System.Object | (různá) | Obecný objekt, předek všech ostatních datových typů, místo v paměti závisí na konkrétním typu |