1. Объявление переменных
Давайте еще раз вспомним, как создавать переменные. Чтобы создать переменную, нужно написать такую команду: тип имя;.
Примеры:
| Команда | Пояснение |
|---|---|
|
Создается переменная s типа std::string. Такая переменная может хранить текст. |
|
Создается переменная x типа int. Такая переменная может хранить в себе целые числа. |
|
Создаются переменные a, b, c, d типа int. Такие переменные могут хранить целые числа. |
Нельзя создать две переменные с одинаковыми именами в одном блоке кода. А вот в разных — можно. Это как коробки, стоящие в разных домах. Подробнее о блоках кода — в следующих лекциях.
Еще есть ограничения на имя переменной. С одной стороны, оно может быть любым, с другой — оно не может содержать пробелов, символов +, - и т.д. Лучше всего в имени переменной использовать только латинские буквы и цифры.
И опять напоминаю, что в языке C++ играет роль, какие буквы вы пишете — большие или маленькие. int a — это не то же самое, что и int A.
Кстати, в C++ можно одновременно создавать переменную и присваивать ей значение. Это экономит время и место:
| Компактный код | Длинный код, эквивалентный коду слева |
|---|---|
|
|
|
|
|
|
|
|
|
|
Так гораздо компактнее и понятнее.
Ну а раз с созданием переменных мы уже разобрались, давайте познакомимся с двумя самыми используемыми типами в языке C++. Это типы int (целые числа) и std::string (текст/строки).
2. Тип int
В переменной типа int можно хранить целые числа: 5, -10, 100500. Также над типом int можно выполнять различные арифметические операции: сложение, вычитание, умножение, деление и другие. Примеры:
int main() {
{
int x = 1; // x будет равен 1
int y = x * 2; // y будет равен 2
int z = 5 * y * y + 2 * y + 3; // z будет равен 20+4+3, будет равен 27
}
{
int a = 5; // a будет равно 5
int b = 1; // b будет равно 1
int c = (a - b) * (a + b); // c будет равно 4*6, будет равно 24
}
{
int a = 64; // a будет равно 64
int b = a / 8; // b будет равно 8
int c = b / 4; // c будет равно 2
int d = c * 3; // d будет равно 6
}
}
Если вы в школе не прогуливали математику, тот тут вам все должно быть понятно 🧐
А если прогуливали, то вот вам список разрешенных операций:
- + — сложение
- - — вычитание
- * — умножение
- / — деление
- % — остаток от деления
3. Тип double
Тип int хранит только целые числа. А что если нам нужны числа с дробной частью? Для этого существует тип double.
Он хранит вещественные числа:
double x = 3.14;
double y = -0.5;
double z = 2.0;
Особенность double
Числа типа double хранятся в памяти приближённо. Иногда могут появляться неожиданные эффекты:
double x = 0.1 + 0.2; // 0.300000004
Вы можете ожидать ровно 0.3, но внутри хранится приближённое значение. Это нормально. Так работает представление дробных чисел в компьютере.
4. Тип std::string
Тип std::string позволяет хранить текстовые строки. А чтобы задать какую-то текстовую строку, в C++ надо написать текст строки, а с обеих сторон поставить двойные кавычки.
| Код | Пояснение |
|---|---|
|
s будет содержать текст Amigo |
|
s будет содержать текст 123 |
|
s будет содержать текст Bond 007 |
Выглядит несложно, правда? Ну если так, тогда вот еще один интересный факт.
Строки в C++ можно склеивать с помощью знака плюс — +. Пример:
#include <string>
int main() {
std::string s1 = std::string("Amigo") + " the best"; // s будет содержать Amigo the best
std::string s2 = ""; // s будет содержать пустую строку — вообще без символов.
int x = 333;
std::string s3 = std::string("Amigo") + std::to_string(x); // s будет содержать Amigo333
}
Обратите внимание на последний пример: мы сложили строку и число. Тут тоже все просто: число будет преобразовано в строку, затем две строки будут склеены. При сложении строк и чисел всегда получается строка.
5. Вывод переменной на экран
Вроде все так очевидно и элементарно. Ну тогда, может, вы сразу догадаетесь, какой командой можно вывести переменную на экран?
На самом деле все просто. Чтобы вывести что-то на экран, мы используем std::cout, куда передаем то, что мы выводим. Для перевода строки удобно добавить '\n'.
#include <iostream>
#include <string>
int main() {
std::cout << "Amigo\n"; // Amigo
std::cout << "Ami" << "go" << '\n'; // Amigo
std::string s1 = "Amigo";
std::cout << s1 << '\n'; // Amigo
std::string s2 = "Am";
std::cout << s2 << "igo" << '\n'; // Amigo
}
Надеюсь, теперь стало немного понятнее. А правильно вы все поняли или нет, мы сейчас проверим. Практика — критерий истины: только с помощью практики можно проверить, хорошо ли вы во всем разобрались.
6. Сокращённые операции присваивания (+=, -=, *=, /=)
В C++ есть удобная форма записи операций вида:
x = x + 5;
Её можно записать короче:
x += 5;
Это называется сокращённое присваивание.
Примеры:
int x = 10;
x += 5; // x = 15
x -= 3; // x = 12
x *= 2; // x = 24
x /= 4; // x = 6
То есть:
x += a → x = x + a
x -= a → x = x - a
x *= a → x = x * a
x /= a → x = x / a
Это не просто «красота кода» — такие записи короче, понятнее и используются постоянно.
Сокращённые операции работают и со строками:
std::string s = "Hello";
s += " World"; // "Hello World"
На JavaRush вы изучаете самую новую версию C++ (C++23), поэтому вам сразу доступны все крутые штуки. Наслаждайтесь! 😎
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ