Найти в Дзене

Базовые типы данных в С++

Оглавление

Разбирая переменные, как объект, мы касались вопроса памяти и говорили о том, что определение переменной позволяет выделить часть оперативной памяти (RAM) под нужды этой самой переменной.

У памяти компьютера есть наименьшая единица — бит. Внутри бита может содержаться только 2 значения: 0 или 1.

Некоторые учебные пособия, а так же популярный курс Гарварда по основам программирования CS50 проводит параллель от бита к лампочке. Лампочка либо горит — значение 1, либо не горит — значение 0.

Курс CS50 можно найти на просторах YouTube.

Просмотр случайного сегмента памяти покажет вам примерно следующее: 0100001011100001100011001.... и т.д.

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

Адреса позволяют получить доступ к определенному месту внутри памяти.

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

Каждый адрес памяти содержит 1 байт данных.

Байт — это объединенная в единое целое группа из битов.

В 1 байте данных, согласно современному стандарту, 8 битов, которые расположены последовательно.

Чаще всего, в С++ программист работает с данными в виде байтов.

Типы данных

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

Когда мы объявляем переменную с целочисленным типом, мы тем самым говорим компилятору: используй часть памяти, которую ты зарезервируешь для этой переменной, как для целочисленного значения.

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

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

Так как компилятор делает всю важную работу за вас и вам нет нужды беспокоиться о том, как типы данных будут преобразовываться в последовательность битов и обратно. Все что вам нужно регулярно делать, работая с ЯП C++ — это выбирать тип данных для объектов, которые будет лучше всего соответствовать требованиям к этому объекту.

Но и здесь, создатели языка, позаботились о вас и реализовали в С++ основные типы данных.

Основные типы данных

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

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

Целочисленные типы данных:

short
int
long
long long

Эти типы данных включают в себя целые положительные или отрицательные числа, в том числе 0.

Вещественный тип данных или числа с плавающей точкой (запятой):

float
double
long double

Эти типы данных позволяют реализовать числа с дробной частью.

Символьные типы данных (целое число):

char
wchar_t
char8_t (C++20)
char16_t
char32_t

Эти типы данных могут хранить один символ текст (буквенный символ).

Логический тип данных:

bool

Хранит значение true (истина) или falce (ложь)

Отсутствие типа:

void

Для наглядности добавлю изображение с описанием базовых типов данных:

-2

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

И еще, оставлю две ссылки на страницы с официальной документацией по типам данных:

Система типов в С++
Встроенные (базовые) типы С++
Почитайте на досуге, документацию читать полезно и важно!

Спасибо за внимание.

Понравился материал? Оставляйте лайки и комментарии.

Подписывайтесь на канал, чтобы не пропустить выход новых статей.

Наука
7 млн интересуются