Программирование. Принципы и практика использования C++ Исправленное издание, стр. 32
cout << "Пожалуйста, введите ваше имя (затем нажмите 'enter'):\n";Будем считать, что вы понимаете, как включить этот код в полную программу, чтобы провести ее тестирование.
Первая строка функции
main()stringfirst_namestring first_name; // first_name — это переменная типа stringЭта строка выделяет участок памяти для хранения строки символов и присваивает ему имя
first_name
Инструкция, вводящая новое имя в программе и выделяющая память для переменной, называется определением.
Следующая строка считывает символы с устройства ввода (клавиатуры) в переменную:
cin >> first_name; // считываем символы в переменную first_nameИмя
cin>>NicolasNicolasfirst_name
Переход на новую строку необходим для того, чтобы привлечь внимание компьютера. Пока переход на новую строку не будет выполнен (не будет нажата клавиша <Enter>), компьютер просто накапливает символы. Эта “отсрочка” дает нам шанс передумать, стереть некоторые символы или заменить их другими перед тем, как нажать клавишу <Enter>. Символ перехода на новую строку не является частью строки, хранящейся в памяти.
Введя входную строку в переменную
first_namecout << "Hello, " << first_name << "!\n";Эта строка выводит на экран слово Hello за которым следует имя Nicolas (значение переменной
first_name!'\n'Hello, Nicolas!Если бы мы любили повторяться и набирать лишний текст, то разбили бы эту строку на несколько инструкций.
cout << "Hello, ";cout << first_name;cout << "!\n";Однако мы не страдаем графоманией и, что еще важнее, — очень не любим лишние повторы (поскольку любой повтор создает возможность для ошибки), поэтому объединили три оператора вывода в одну инструкцию.
Обратите внимание на то, что мы заключили выражение
Hellofirst_namecout << "Имя " << " — " << first_name;Здесь строка "
Имяfirst_namefirst_nameNicolasИмя — Nicolas3.2. Переменные
intstringint123stringHello, World!\nint*string<=string name = "Annemarie";int number_of_steps = 39;Эти переменные можно изобразить следующим образом:

Мы не можем записывать в переменную значение неприемлемого типа.
string name2 = 39; // ошибка: 39 — это не строкаint number_of_steps = "Annemarie"; // ошибка: "Annemarie" // — не целое числоКомпилятор запоминает тип каждой переменной и позволяет вам использовать переменную лишь так, как предусмотрено ее типом, указанным в определении.