Общие сведения о типах данных C#
C# относится к строго типизированным языкам программирования, поэтому любая переменная должна относиться к тому или иному типу данных.
В C# все типы данных наследуются от самого простого типа – Object
, и могут быть неявно приведены к этому типу. Все типы данных делятся на две категории – ссылочные типы и типы значений.

Типы значений – это простые числовые типы, структуры, перечисления. Все типы значений наследуются от типа System.ValueType
, который в свою очередь наследуется от базового класса Object
.

К типам значений относятся также типы значений допускающие null
.
Встроенные типы данных
В таблице ниже представлены встроенные типы данных языка Си шарп:
Тип данных | Псевдоним | Размер в байтах | Диапазон значений | Описание |
---|---|---|---|---|
Целочисленные типы данных | ||||
Byte | byte | 1 | 0 - 255 | Целочисленное беззнаковое значение размером 1 байт. |
SByte | sbyte | 1 | -128 - 127 | Целочисленное значение размером 1 байт. |
Int16 | short | 2 | -32768 - 32767 | Целочисленное беззнаковое значение размером 2 байт. |
UInt16 | ushort | 2 | 0 - 65535 | Целочисленное значение размером 2 байт. |
Int32 | int | 4 | -2147483648 - 2147483647 | Целочисленное беззнаковое значение размером 4 байт. |
UInt32 | uint | 4 | 0 - 4294967295 | Целочисленное значение размером 4 байт. |
Int64 | long | 8 | -9223372036854775808 - 9223372036854775807 | Целочисленное беззнаковое значение размером 8 байт. |
UInt64 | ulong | 8 | 0 - 18446744073709551615 | Целочисленное значение размером 8 байт. |
Числовые типы данных с плавающей точкой | ||||
Single | float | 4 | ±1.5*10⁻⁴⁵ - ±3.4*10³⁸ | Точность 6 - 9 цифр после запятой |
Double | double | 8 | ±5.0*10⁻³²⁴ - ±1.7*10³⁰⁸ | Точность 15 -17 цифр после запятой |
Decimal | decimal | 16 | ±1,0 x 10⁻²⁸ - ±7,9228 x 10²⁸ | Точность 28 -29 цифр после запятой |
Символьные типы данных | ||||
Char | char | 2 | - | Представляет какой-либо символ в формате Unicode |
String | string | - | - | Представляет строку в формате Unicode |
Логические типы данных | ||||
Boolean | bool | 1 | Может принимать только 2 значения: true (истина), false (ложь) |
Примечание: в приведенной выше таблице только тип String
является ссылочным. Все остальные типы представляют собой типы значений.
Ссылочные типы
Ссылочные типы данных представляют собой ссылку на какой то объект в памяти. Объекты ссылочного типа располагаются средой CLR в управляемой куче (heap).