Типы данных С#
Тип данных определяет множество значений, набор операций, которые можно применять к таким значениям и, возможно, способ реализации хранения значений и выполнения операций.
Ссылочные типы
Переменная ссылочного типа содержит не данные, а ссылку на них. Сами данные в этом случае уже хранятся в куче. Куча - это область памяти, в которой размещаются управляемые объекты, и работает сборщик мусора. Сборщик мусора освобождает все ресурсы и объекты, которые уже не нужны.
объекты
object
может хранить значение любого типа данных и занимает 4 байта на 32-разрядной платформе и 8 байт на 64-разрядной платформе. Представлен системным типом System.Object, который является базовым для всех других типов и классов .NET.
строки
string
хранит набор символов Unicode. Представлен системным типом System.String
Типы значений
Типы значений хранятся в стеке. Стек - это область памяти, которая используется для передачи параметров в методы и хранения определенных в пределах методов локальных переменных. Данные переменной типа значения хранятся в самой переменной.
логический тип
Логический тип данных bool представляет два логических значения: "истина" и "ложь"
bool
хранит значение true или false. Представлен системным типом System.Boolean
десятичный тип
Тип данных, предназначенный для применения в финансовых расчетах
decimal
хранит десятичное дробное число. Если употребляется без десятичной запятой, имеет значение от 0 до +/–79 228 162 514 264 337 593 543 950 335; если с запятой, то от 0 до +/–7,9228162514264337593543950335 с 28 разрядами после запятой и занимает 16 байт. Представлен системным типом System.Decimal
символьный тип
Тип данных, предназначенный для хранения одного символа в определённой кодировке.
char
хранит одиночный символ в кодировке Unicode и занимает 2 байта. Представлен системным типом System.Char
целочисленные типы
Эти типы данных представляют целые числа в определённом диапазоне
byte
хранит целое число от 0 до 255 и занимает 1 байт. Представлен системным типом System.Byte
sbyte
хранит целое число от -128 до 127 и занимает 1 байт. Представлен системным типом System.SByte
short
хранит целое число от -32768 до 32767 и занимает 2 байта. Представлен системным типом System.Int16
ushort
хранит целое число от 0 до 65535 и занимает 2 байта. Представлен системным типом System.UInt16
int
хранит целое число от -2147483648 до 2147483647 и занимает 4 байта. Представлен системным типом System.Int32
uint
хранит целое число от 0 до 4294967295 и занимает 4 байта. Представлен системным типом System.UInt32
long
хранит целое число от –9 223 372 036 854 775 808 до 9 223 372 036 854 775 807 и занимает 8 байт
ulong
хранит целое число от 0 до 18 446 744 073 709 551 615 и занимает 8 байт
типы с плавающей запятой
Типы с плавающей точкой позволяют представлять числа с дробной частью.
float
хранит число с плавающей точкой от -3.4*1038 до 3.4*1038 и занимает 4 байта. Представлен системным типом System.Single
double
хранит число с плавающей точкой от ±5.0*10-324 до ±1.7*10308 и занимает 8 байта. Представлен системным типомSystem.Double