Изучение C++ для начинающих / #3 – Переменные и типы данных

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

✅ Полезные ссылки:

⏰ Тайм-коды:
00:00 - Начало
00:20 - Что такое переменные?
01:10 - Создание переменной
03:55 - Работа с переменной
08:05 - Получение данных от пользователя
12:40 - Типы данных
13:20 - Целые числа
21:30 - Числа с точкой
23:25 - Символьный тип данных
25:00 - Логический тип данных
26:27 - Заключительная часть

✔ -------------

- Уроки от #itProger 👨🏼‍💻
- Все уроки по хештегу #itprogerLessons
Рекомендации по теме
Комментарии
Автор

Был в десяти каналах по С++ В этом канале самые понятные уроки. 👍

Didar.Kussain
Автор

за час узнала больше чем полтора месяца в универе. спасибо большое и здоровье Вам!

savletnyshanbekkyzy
Автор

лучший респект автору, была мечта выучить язык с++ посмотрел уже три урока все понятно и внятно буду продолжать учить и смотреть, искренне желаю успеха во всем👍👍👍

Hesoyam
Автор

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

vyxosxc
Автор

Отлично объясняешь.Все четко и по делу, учусь в академии на разраба ПО и от вас узнал некоторые плюшки которые там не говорили.Единственное иногда торопитесь, но это не критично можно и перемотать))))!А так жирный лайк и подписка))!

iipedatejibbykov
Автор

Cпасибо вам большое за урок! В универе за семестр ничего не поняла, а вы объяснили все быстро и легко.

ktuxbni
Автор

Cпасибо большое, очень хорошо объясняете без лишней воды)

anyfany
Автор

После курсов JS как по маслу с++ заходит, автор красава, не болит голова даже после прослушивания

Game_Create_
Автор

ТЫ СМОГ ОБЪЯСНИТЬ МНЕ ТО ЧТО НЕ СМОГЛИ ПРЕПОДЫ! ОГРОМНОЕ СПАСИБО! ЛЮБЛЮ ТЕБЯ!!!❤

kirklpq
Автор

Всё просто и без воды, понятно объяснено, спасибо!"

teraw_o_r_d
Автор

Гош... С твоего позволения буду правки/комментарии оставлять...
Программисты в продакшене: пишут for(;;) вместо while (1) для бесконечного цикла, чтобы сэкономить время на написании одного "лишнего" символа ...
Гоша: пишем short вместо int, чтобы сэкономить 2 байта памяти... :)))

*На самом деле* компиляторы часто приводят типы данных меньше инта к инту для оптимизации времени исполнения программы, так как процессор нативно работает именно с интом (DWORD/int), а меньшие типы данных ему приходится "резать", чтобы добраться до WORD/short или BYTE/char. Поэтому нет смысла в стремлении к сохранению двух байтов памяти с одной отдельной перменной. Так заморачиваться имеет смысл только при каком нибудь огромном массиве структур массивов, когда два байта с миллионом записей уже превращаются в 2 МБ. Да, ради 2 МБ, можно написать не int, а short.

UPD1. На счёт unsigned. Этот тип данных нужно использовать осторожно, т.к. он может привести к глюкам и ошибкам, как в логике алгоритма, так и фактическим ошибкам программы. У Хирьянова подробнее посмотрите и изучите вопрос. unsigned можно и нужно использовать для значений, которые не бывают отрицательными, но всегда помнить о нижней границе по нулю. Ошибетесь с арифметикой - получите переполнение с результатом == MAX_UINT, вместо -1. Например легко ошибиться в цикле.
Пример: {
unsigned n = 100;
while (n > 0) {
/* any instructions */
n -= 3;
}
// всё, ловите ошибку. в лучшем случае, бесконечный цикл.}

UPD2. На счёт char. Это обычная числовая переменная размером 1 байт == 8 бит, то есть содержит 2^8 допустимых вариантов значений, то есть 256. то есть от -128 до 127 включительно. или 0 ... 255 включительно для unsigned char. Туда можно присваивать любые числовые значения из указанного диапазона и при попытке вывода переменной в качестве символа будет выведен ASC-II символ с соответвующим кодом (int dec). Одинарные кавычки для помещения нужного символа в перменную char - это просто удобство для программиста. На этапе компиляции текста программы в объектный файл любой asc-ii символ в одинарных кавычках будет конвертирован в char или даже int-число, соответствующее коду символа.

Про bool. Размер - 1 байт. Совсем необязательная штука, но для улучшения читабельности можно испольховать. В условиях и любой операции на логику можно использовать любые числа для обозначения истинности и лжи. При этом если не инвертировать логику глобальной инверсией значений true/false, то '0' - это всегда == false. {(*ЛЮБОЕ* число != 0) == (true)}. Но обычно просто 1.

leogscdlr
Автор

Слушай, не легче во второй строке написать using namespace std; тогда когда вы будете выводить текст не надо будет писать std:: то есть вы будете писать только cout<<"Hello, World!";

strke_lol
Автор

Я ещё изучал python но когда я его изучал мне говорили всегда о переменых данных и нечего не было понятно а ты все чётко объяснил и все понятно.

N_V_The_Games_Org
Автор

Уже посмотрел курс по java и pyton, всё понятно.

I_shinobi_I
Автор

Тип данных long в Java представляет целое число в диапазоне от -2 147 483 648 до 2 147 483 6471.
В C++ long может принимать значения от -9223372036854775808 до 9223372036854775807
. В C long long представляет целое число в диапазоне от −9 223 372 036 854 775 808 до +9 223 372 036 854 775 807345.
Размер переменной long:
В Java: 4 байта (32 бита)
В C++: 8 байтов памяти
В C: 8 байт345.

kexhmgq
Автор

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

fugqxgu
Автор

Вообще насколько я знаю (но могу ошибаться), 'f' приписывают к числу, чтобы обозначить, что оно именно float, если этого не сделать, то по умолчанию оно будет восприниматься как double. По сути, никакой проблемы нет, просто компилятор может ругнуться про возможную потерю данных при присвоении переменной типа float значения double.

askveitekstanda
Автор

В начале урока у меня мозг расплывался, однако в конце всё понятно стало:)

WornCpamp
Автор

Знаю хорошо с# и юнити по твоим видеороликам. Можно сказать что с++ это одно и то же, что и с# только с некоторыми правками

ekshrpm
Автор

Почему не прописать в начале using namespace std;, чтоб каждый раз не писать std:: . А так все шикарно, спасибо учусь на программиста первый курс только, по твоим урокам более менее понимаю

magomedganjiev