Осторожно!Не следует путать строки с символами. Символьный литерал заключается в одинарные кавычки, например 'а'. Однако "а" — это уже строка, содержащая только одну букву.

Управляющие символьные последовательности

С выводом большинства печатаемых символов прекрасно справляются символьные константы, заключенные в одинарные кавычки, но есть такие "экземпляры" (например, символ возврата каретки), которые невозможно ввести в исходный текст программы с клавиатуры. Некоторые символы (например, одинарные и двойные кавычки) в C++ имеют специальное назначение, поэтому иногда их нельзя ввести напрямую. По этой причине в языке C++ разрешено использовать ряд специальных символьных последовательностей (включающих символ "обратная косая черта"), которые также называются управляющими последовательностями. Их список приведен в табл. 3.4.

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

#include

using namespace std;

int main()

{

 cout<<"\n\\\b";

 return 0;

}

Инициализация переменных

При объявлении переменной ей можно присвоить некоторое значение, т.е. инициализировать ее, записав после ее имени знак равенства и начальное значение. Общий формат инициализации имеет следующий вид:

тип имя_переменной = значение;

Вот несколько примеров.

char ch = 'а';

int first = 0;

float balance = 123.23F;

Несмотря на то что переменные часто инициализируются константами, C++ позволяет инициализировать переменные динамически, т.е. с помощью любого выражения, действительного на момент инициализации. Как будет показано ниже, инициализация играет важную роль при работе с объектами.

Глобальные переменные инициализируются только в начале программы. Локальные переменные инициализируются при каждом входе в функцию, в которой они объявлены. Все глобальные переменные инициализируются нулевыми значениями, если не указаны никакие иные инициализаторы. Неинициализированные локальные переменные будут иметь неизвестные значения до первой инструкции присваивания, в которой они используются.

Рассмотрим простой пример инициализации переменных. В следующей программе используется функция total(), которая предназначена для вычисления суммы всех последовательных чисел, начиная с единицы и заканчивая числом, переданным ей в качестве аргумента. Например, сумма ряда чисел, ограниченного числом 3, равна 1 + 2 + 3 = 6. В процессе вычисления итоговой суммы функция total() отображает промежуточные результаты. Обратите внимание на использование переменной sum в функции total().

// Пример использования инициализации переменных.

#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

Как видно по результатам, при каждом вызове функции total() переменная sum инициализируется нулем.

Операторы
Перейти на страницу:

Все книги серии Изучайте C++ с профессионалами

Похожие книги