Только до 7.12
Вечерний «Путь в ИТ» с Иваном Ургантом
Кнопка закрыть топ-бар
ГлавнаяБлогВиды данных в программировании: основные типы и их примеры
Виды данных в программировании
6 851
Время чтения: 14 минут

Виды данных в программировании: основные типы и их примеры

6 851
Время чтения: 14 минут
Сохранить статью:
Сохранить статью:
В статье рассказывается: 
  1. Основные виды данных в программировании
  2. Разновидности базовых типов данных в программировании
  3. Примеры видов данных в программировании
  4. Нюансы ссылочных типов данных
  5. Особенности типизации данных
  6. Пройди тест и узнай, какая сфера тебе подходит:
    айти, дизайн или маркетинг.
    Бесплатно от Geekbrains

Новичкам, ищущим своё профессиональное место в области кодов и алгоритмов, обязательно необходимо знать про такой основополагающий момент, как данные. По сути, это информация, которая зафиксирована таким образом, что компьютер может с ней работать – получать, обрабатывать и передавать.

Виды данных в программировании бывают разные, и не зная их сложно добиться высот в IT-сфере. Заполнить пробел в этой теме вам поможет представленная ниже статья. В ней мы рассказали про понятие и основные разновидности данных, а также дополнили материал примерами.

Основные виды данных в программировании

Виды данных в программировании – основополагающее понятие. Классификация данных позволяет определить, где они хранятся, что собой представляют и для каких операций могут применяться.

Основные виды данных в программировании
Основные виды данных в программировании

Виды данных в программировании – это варианты представления переменных конкретного объекта. Чтобы генерировать нужный код программирования, информация о типах данных должна быть доступна программисту и транслятору.

Виды данных = формат + размерные характеристики, диапазон показателей + операции.

Различают базовые и производные виды данных в программировании:

  1. Первый вид (БВД) включает данные, которые изначально заложены в транслятор. Как правило, они зависят от сферы применения языка программирования. В языке Си, который отличается зависимостью от архитектуры, базовые виды данных не отличаются от основных форматов, принятых в IT. Другими словами, при преобразовании операций с данными в различные машинные команды они (данные) совершенно не меняются.
  2. Второй вид – производные (ПВД), программист преобразует из базовых. Это приводит к формированию иерархии видов данных. При этом для обозначения некоторых из них могут применяться дополнительные имена, которые также можно применять наряду с базовыми. Например, в языке Си++, который является объектно-ориентированным, это имена классов.

Разновидности базовых типов данных в программировании

  • Числовые виды данных в программировании

Целочисленные.

Виды данных в программировании делятся на знаковые и беззнаковые. Уже понятно из наименования: в знаковых могут храниться все действительные числа, а также ноль, а в беззнаковых – только положительные (больше нуля).

У беззнаковых данных диапазон больше в 2 раза, чем у знаковых. Это – из-за компьютерного восприятия: в знаковых типах бит отражает знак числа, где 0 является положительным значением, а 1 – отрицательным.

Разновидности базовых типов данных в программировании
Разновидности базовых типов данных в программировании

Учитывая восприятие компьютерными устройствами целого значения, в ячейке памяти из n бит может храниться и 2n-1 для знаковых типов, и 2n – для беззнаковых:

  • Тип short (короткий целый.) Для него в памяти отведено 16 бит, то есть 2 байта (216 = 65 536). Диапазон значений, который может принять тип short со знаком – это [-32 768; 32 767].
  • Переменный тип long (длинный целый). Этому типу выделено 64 бита, то есть 8 байт. (264 = 1,8 446 744 * 1 019). Он имеет внушительный диапазон: в случае знакового типа это [-9 223 372 036 854 775 808 9 223 372 036 854 775 807]. Также модификатор long может использоваться в связке с другими типами (long будет указан перед наименованием типа, допустим, long double). Благодаря этому увеличивается диапазон возможных значений.

Вещественные.

Значения этого типа имеют плавающую запятую.

Плавающая запятая — форма представления действительных чисел, в которой число хранится в форме мантиссы и показателя степени. Если говорить на языке программирования, то каждое число может быть представлено в следующей форме:

N = M ∗ 10p,

где N — записываемое число;

M — мантисса;

p (целое) — порядок.

ТОП-30 IT-профессий
2022 года с доходом
от 200 000 ₽
Команда GeekBrains совместно с международными специалистами по развитию карьеры подготовили материалы, которые помогут вам начать путь к профессии мечты.
Подборка содержит только самые востребованные и высокооплачиваемые специальности и направления в IT-сфере. 86% наших учеников с помощью данных материалов определились с карьерной целью на ближайшее будущее!

Скачивайте и используйте уже сегодня:

Александр Сагун
Александр Сагун
Исполнительный
директор Geekbrains
pdf иконка

Топ-30 самых востребованных и высокооплачиваемых профессий 2022

Поможет разобраться в актуальной ситуации на рынке труда

doc иконка

Подборка 50+ ресурсов об IT-сфере

Только лучшие телеграм-каналы, каналы Youtube, подкасты, форумы и многое другое для того, чтобы узнавать новое про IT

pdf иконка

ТОП 50+ сервисов и приложений от Geekbrains

Безопасные и надежные программы для работы в наши дни

pdf 3,7mb
doc 1,7mb
Уже скачали 16189 pdf иконка

Например: 14 441 544 = 1,4 441 544 ∗ 107; 0,0 004 785 = 4,785 ∗ 10-4. На мониторе компьютера вы увидите следующие значения:

1,4441544E+7; 4,785E–4.

Таким образом, в предназначенном месте памяти хранится целое число фиксированной длины и последовательность вносимого значения. Разберем пример типа данных, хранящихся в 64 битах. Мантисса будет равна 53 битам: 1 для знака числа и 52 для её значения; порядок 10 битов: 1 бит для знака и 10 для значения. Здесь можно порассуждать о диапазоне точности, а именно какое самое большое и самое маленькое число может хранить рассматриваемый тип данных: от 4,94 * 10−324 до 1,79 * 10308.

Но мы помним, что компьютерная память не резиновая, поэтому сохраняются первые разряды мантиссы. По-другому их ещё именуют значащими.

Итог: вещественные виды данных в программировании, примеры которых мы привели, характеризуются количеством значащих разрядов и диапазоном точности, что отличает их от целочисленных.

  • Символьный тип данных в программировании.

В символьном типе переменная имеет только один символ, целое число. В соответствии с кодировкой, он преобразуется в некий символ. Символьному виду данных в программировании присущ только размер выделяемой под них памяти.

Символьный тип данных в программировании
Символьный тип данных в программировании
  • Логический тип данных в программировании.

У этого типа данных могут быть следующие значения: false (ложь) или true (правда). Ему соответствуют в языках С# и C++ тип bool, в Java – boolean.

  • Перечислимый вид данных в программировании.

Для внутреннего представления этот вид аналогичен целочисленному, но в нем программист использует уже готовые конкретные строковые значения вместо чисел.

Для более точного представления разберем пример на языке С++ (в С# и Java – аналогично):

enum Forms {shape, sphere, cylinder, polygon};

В данном случае переменные перечислимого вида данных Forms могут иметь только те значение, которые указаны в примере. Это удобно, поскольку мы работает не с числами, а определенными смысловыми значениями. Но компьютер считывает данные как целые числа.

Только до 8.12
Как за 3 часа
разбираться в IT
лучше, чем 90%
новичков и выйти на
доход в 200 000 ₽?
Приглашаем вас на бесплатный онлайн-интенсив «Путь в IT»! За несколько часов эксперты GeekBrains разберутся, как устроена сфера информационных технологий, как в нее попасть и развиваться.
Александр Волчек CEO GeekBrains

Интенсив «Путь в IT» поможет:

  • За 3 часа разбираться в IT лучше, чем 90% новичков.
  • Понять, что действительно ждет IT-индустрию в ближайшие 10 лет.
  • Узнать как по шагам c нуля выйти на доход в 200 000 ₽ в IT.
При регистрации вы получите в подарок:
pdf иконка

«Колесо компетенций»

Тест, в котором вы оцениваете свои качества и узнаете, какая профессия в IT подходит именно вам

doc иконка

«Критические ошибки, которые могут разрушить карьеру»

Собрали 7 типичных ошибок, четвертую должен знать каждый!

pdf иконка

Тест "Есть ли у вас синдром самозванца?"

Мини-тест из 11 вопросов поможет вам увидеть своего внутреннего критика

Хотите сделать первый шаг и погрузиться в мир информационных технологий? Регистрируйтесь и смотрите интенсив:
Только до 8 декабря
Осталось 17 мест
  • Массивы данных.

Теперь рассмотрим сложные виды данных в программировании. И на первом месте – массив. Массив – это последовательно выстроенная и имеющая общее имя структура данных, в которой хранятся элементы одного типа. Его можно представить как набор пронумерованных ячеек, в каждую из которых поместили какие-то данные (один элемент данных в конкретную ячейку).

Каждый массив определяется типом данных составляющих его элементов, а они могут быть абсолютно любыми. В программировании не допускается использование всего массива, работа осуществляется с определенной его частью. Для того, чтобы добраться до него, в трёх указанных выше языках применяют оператор «[]»:

array[0].

Индексом массива является целое число, ссылающее на определенную часть массива. Индекс, как правило, имеет вид int.

  • Структура.

До этого мы разобрали встроенные виды данных в программировании. Далее рассмотрим пользовательский тип данных.

Структура хранит в себе комплект переменных различных видов. В программировании структуры нужны для того, чтобы объединить близкие по значению вещи.

  • Класс.

Другим пользовательским видом данных в программировании является класс. Класс наделен теми же возможностями, что и структура, но, помимо параметров, он ещё имеет и методы. Также класс поддерживает большое число вещей, которые объединены объектно-ориентированным программированием.

Примеры видов данных в программировании

  1. В языке Рython используются следующие типы данных программирования:
    • int — целочисленный;
    • char — символьный;
    • bool — логический;
    • float —с плавающей запятой;
    • double —с плавающей запятой двойной точности.

    Примеры видов данных в программировании
    Примеры видов данных в программировании
  2. Язык программирования JavaScript содержит следующие типы данных:
    • srting — тип данных «строка»;
    • number — «число»;
    • object — тип данных, хранящих свойства и методы;
    • undefined — тип данных, значения которых не определены;
    • boolean — логический;
    • null —с «пустыми» значениями.

    Разберем первые из них:

    Тип данных — «строка».

    Строкой string в JavaScript считают часть текста (порядок символов). Состав ее может включать знаки, пробелы, числа, буквенные символы, точки или запятые, то есть различные символы. Чаще всего они записаны в одинарных кавычках (в языке JavaScript допускается использование двойных кавычек). В начале и в конце строки кавычки должны быть одного формата.

    Строки можно объединять, либо вырезать из них необходимый фрагмент. Это как пример в математике: складывая два числа, мы получаем новое число. Так и со строками. В результате получится строка, которая будет состоять из первоначальных строк, которые были склеены. Отдельному символу, находящемуся в строке, присваивается номер. Этот номер соответствует позиции, которую он занимает. Счет начинается с нуля, а номера используют для того, чтобы определить конкретный символ или вырезать его.

    Некоторые языки программирования используют специальный вид данных в программировании, с помощью которого записывается символ. Например, в языке С это «char».

    Тип данных — «число».

    В таком виде данных могут быть как дробные, так и целые числа.

    • int — целые, то есть числа без дробной части;
    • number — числовые данные (в JavaScript);
    • double — тип данных с плавающей запятой двойной точности;
    • float — вещественные, дробные числа с десятичной точкой.

    Целые числа используют для подсчета, а вещественные — для измерения таких свойств, как вес.

  3. Логические (булевые) типы данных в программировании — boolean.Принимая решение, что необходимо выполнить далее, компьютер анализирует и задает вопрос – истина или ложь? «Да» или «Нет»? Вопросы, на которые существует только 2 варианта ответа, являются логическими (булевыми) выражениями.Логический тип может принимать либо значение «истина» (true), либо значение «ложь» (false). После этого компьютер анализирует, сравнивает данные (числа, строки и переменные) и принимает решение.

Существуют ещё такие виды данных в программировании, как null, undefined, object (объект) — в JavaScript или list (список), dict (словарь), tuple (кортеж) — в Рython. Но чтобы познать азы программирования, достаточно будет знаний типов данных «строка», «число» и логическое значение.

Не каждый тип данных может взаимодействовать с другим типом. Иногда необходимо преобразовать один тип в другой, чтобы не произошла ошибка.

В JavaScript оператор typeof возвращает тип аргумента. В Рython для того, чтобы определить тип данных, применяют команду type.

Нюансы ссылочных типов данных

Ссылочные виды данных в программировании отличаются тем, что для их передачи используют ссылки, а не значения. Рассмотрим этот момент подробнее.

Данные этого вида нельзя считать примитивными, а их размер не фиксируется. Ссылочные виды данных в программировании могут иметь любой размер и сберегаются не в [«переменном»] участке памяти, а в другом ее месте. К таким данным можно отнести рассмотренные ранее массивы. В языках подобных С++ экземпляры классов и коллекции данных тоже можно отнести к этому виду.

Когда создается массив:

int[] mass = new int[5];

Для представителя класса:

StreamWriter sw = new StreamWriter(«output.txt»);

Выделить память в компьютере можно, используя команду new (C++, C#, Java). При этом, в переменную объекта (в данной ситуации: mass и sw) вносят только ссылку, обеспечивающую переход на определенный адрес памяти, где хранится созданный объект.

При передаче объекта как аргумента методу/функции, в метод будет переслана не копия самого объекта, а данные по его адресу в памяти. Таким образом, различные корректировки и операции с объектом в вызванном методе будут отображены в вызывающем, так как объект остается неизменным.

Особенности типизации данных

На типизацию данных в программировании влияет вид используемого языка. Она может быть в одно и тоже время:

  • сильной либо слабой;
  • динамической либо статической.

Сильная типизация языка программирования говорит о том, что в нем недопустимо сочетание различных видов данных. Такой язык не сможет преобразовывать разные типы данных. Например, в Python невозможно составить строку с числом.

Слабая типизация языка указывает на допустимость автоматического преобразования разных видов данных с учетом особенностей манипуляций с данными. Примером такого языка программирования является JavaScript.

Нюансы ссылочных типов данных
Нюансы ссылочных типов данных

Более надежными считаются программы, для написания которых использовался код языка программирования с сильной типизацией. Дело в том, что этот уровень служит защитой от элементарных ошибок, которые может допустить программист по невнимательности (опечатки, использование неподходящих данных и т. д.).

Языки программирования с динамической типизацией не фиксируют виды данных, поэтому они (виды) могут отличаться в разных частях кода одних и тех же данных.

При статической типизации вид данных будет зафиксирован при первоначальном объявлении значений. В дальнейшем уже нельзя поменять вид данных, так в этом случае еще перед запуском программы будет выявлена ошибка.

В этой статье рассмотрены различные виды данных, операций над данными в программировании, а также стандартные функции. Надеемся, наш материал оказался для вас полезным и помог во многом разобраться!

Оцените статью
Рейтинг: 5
( голосов 2 )
Поделиться статьей
Добавить комментарий

Забрать
гарантированный
подарок

Получите бесплатно подборку файлов от GeekBrains:

Осталось 17 мест

Поздравляем! Вы выиграли 4 курса по ИТ профессиям. Чтобы закрепить подарок и получить к нему доступ, заполните информацию в открывшемся окне

×
Петр Озеров
Петр Озеров печатает ...