Осторожно!
С выводом большинства печатаемых символов прекрасно справляются символьные константы, заключенные в одинарные кавычки, но есть такие "экземпляры" (например, символ возврата каретки), которые невозможно ввести в исходный текст программы с клавиатуры. Некоторые символы (например, одинарные и двойные кавычки) в C++ имеют специальное назначение, поэтому иногда их нельзя ввести напрямую. По этой причине в языке C++ разрешено использовать ряд специальных символьных последовательностей (включающих символ "обратная косая черта"), которые также называются
Использование управляющих последовательностей демонстрируется на примере следующей программы. При ее выполнении будут выведены символы перехода на новую строку, обратной косой черты и возврата на одну позицию.
#include
using namespace std;
int main()
{
cout<<"\n\\\b";
return 0;
}
При объявлении переменной ей можно присвоить некоторое значение, т.е. инициализировать ее, записав после ее имени знак равенства и начальное значение. Общий формат инициализации имеет следующий вид:
тип имя_переменной = значение;
Вот несколько примеров.
char ch = 'а';
int first = 0;
float balance = 123.23F;
Несмотря на то что переменные часто инициализируются константами, C++ позволяет инициализировать переменные динамически, т.е. с помощью любого выражения, действительного на момент инициализации. Как будет показано ниже, инициализация играет важную роль при работе с объектами.
Глобальные переменные инициализируются только в начале программы. Локальные переменные инициализируются при каждом входе в функцию, в которой они объявлены. Все глобальные переменные инициализируются нулевыми значениями, если не указаны никакие иные инициализаторы. Неинициализированные локальные переменные будут иметь неизвестные значения до первой инструкции присваивания, в которой они используются.
Рассмотрим простой пример инициализации переменных. В следующей программе используется функция
// Пример использования инициализации переменных.
#include
using namespace std;
void total(int x);
int main()
{
cout << "Вычисление суммы чисел от 1 до 5.\n";
total(5);
cout << "\n Вычисление суммы чисел от 1 до 6.\n";
total(6);
return 0;
}
void total(int x)
{
int sum=0; // Инициализируем переменную sum.
int i, count;
for(i=1; i<=x; i++) {
sum = sum + i;
for(count=0; count<10; count++) cout << '.';
cout << "Промежуточная сумма равна " << sum << '\n';
}
}
Результаты выполнения этой программы таковы.
Вычисление суммы чисел от 1 до 5.
..........Промежуточная сумма равна 1
..........Промежуточная сумма равна 3
..........Промежуточная сумма равна 6
..........Промежуточная сумма равна 10
..........Промежуточная сумма равна 15
Вычисление суммы чисел от 1 до 6.
..........Промежуточная сумма равна 1
..........Промежуточная сумма равна 3
..........Промежуточная сумма равна 6
..........Промежуточная сумма равна 10
..........Промежуточная сумма равна 15
..........Промежуточная сумма равна 21
Как видно по результатам, при каждом вызове функции