Типы данных в C#

Типы данных

В этой статье, кратко и доступны языком рассказывается основная информация о типах данных в C#, и их перечислением и описанием. Информация носит справочный характер.

Типы данных в C#, можно условно разделить не две группы: типы значений и ссылочные типы. К типам значений относятся большинство встроенных типов C# и типы (в том числе и пользовательские), созданные с применением ключевого слова struct (т.е. так называемые структуры). Типы значений (в чистом виде, а не в составе ссылочных типов) хранятся в стеке. К ссылочным типам, относятся типы, созданные с применением ключевого слова class (классы, пользовательские и стандартные). Ссылочные типы хранятся в «куче».

Ниже представлена таблица встроенных типов данных:

Тип Биты Аналог Описание
sbyte 8 System.SByte от -128 до 127
short 16 System.Int16 от -32768 до 32767
int 32 System.Int32 от -2147483648 до 2147483647
long 64 System.Int64 от -9223372036854775808 до 9223372036854775807
byte 8 System.Byte от 0 до 255
ushort 16 System.Uint16 от 0 до 65535
uint 32 System.Uint32 от 0 до 4294967295
ulong 64 System.Uint64 от 0 до 18446744073709551615
char 16 System.Char символ
bool 8 System.Boolean истина/ложь
float 32 System.Single от -3.402823e38 до 3.402823e38
double 64 System.Double от -1.79769313486232e308 до 1.79769313486232e308
decimal 128 System.Decimal от -79228162514264337593543950335 до 79228162514264337593543950335
string - System.String строка символов

Типы значений, используются как некие простые, неизменяемые типы. Это отлично видно, когда типы значений используются в качестве параметров методов. Дело в том что в метод попадает копия значения, и изменить его оригинал уже нельзя (без дополнительных инструментов языка C#). В то время, как при использовании ссылочных типов, в метод попадает копия ссылки, через которую, оригинальный объект (именно объект, а не ссылку, которая на него указывает) можно изменять. Подробнее об этом в статье C#. Передача параметров в методы.

Добавить комментарий