- •Компилятор — программа, транслирующая исходный (высокоуровневый) код программы в конечный (низкоуровневый) код.
- •Типы ошибок компиляции:
- •Ошибки компоновщика
- •Struct { int x; int y; } myStruct; код создаст переменную, MyStruct, с
- •Большинство сообщений от компилятора будет состоять как минимум из четырех вещей:
- •Обработка непонятных или странных сообщений
- •Ошибки компоновщика
- •Ошибки компоновщика
- •Ошибки компоновщика
- •Выбор компиляторов (IDE)
- •if(условие) инструкция;
- •// Эта программа демонстрирует использование if-инструкции.
- •for(инициализация; условие; инкремент) инструкция;
- •Блок — это логически связанная группа
- •// Программа демонстрирует использование блока
- •Формальный параметр — это локальная переменная,
- •Модификаторы типов
- •Переменные типа char можно использовать не
- •Литералы
- •Чтобы использовать двубайтовый символьный
- •Целочисленные константы задаются как числа без
- •Шестнадцатеричный литерал должен начинаться с
- •Строковые литералы
- •Управляющие символьные последовательности
- •Инициализация переменных
- •Глобальные переменные инициализируются только в
- •Операторы
- •Инкремент и декремент
- •Операторы отношений и логические операторы
- •Выражения
- •Преобразование типов в выражениях
- •Приведение типов
- •Использование пробелов и круглых скобок
- •if(выражение)
- •Нуль автоматически преобразуется в false, а все
- •// Программа "Угадай магическое число":
- •Конструкция if-else-if
- •Итак, общий формат записи цикла for для
- •для управления циклом for можно использовать
- •цикл будет выполняться до тех пор, пока
- •Цикл, который должен выполняться до тех пор,
- •Бесконечный цикл — это цикл, который никогда не
- •В программах часто используются так называемые
- •Инструкция switch — это инструкция
- •■Инструкция switch отличается от инструкции if
- •int main()
- •Инструкция while — еще один способ организации
- •Тело while-цикла может вообще не содержать ни
- •Цикл do-while — это единственный цикл, который
- •В следующей программе цикл do-while выполняется
- •Инструкция continue позволяет немедленно
- •Инструкция break позволяет немедленно выйти из
- •По нажатию клавиши выполнение цикла
- •Инструкция break приводит к выходу из самого внутреннего цикла. Рассмотрим пример.
- •Иногда инструкцию goto стоит использовать для
Использование пробелов и круглых скобок
Любое выражение в C++ для повышения
читабельности может включать пробелы (или символы табуляции).
х=10/у*(127/х);
х = 10 / у * (127/х);
Круглые скобки (так же, как в алгебре) повышают
приоритет операций, содержащихся внутри них.
Использование избыточных или дополнительных круглых скобок не приведет к ошибке или замедлению вычисления выражения.
х = у/3-34*temp+127;
X = (у/3) - (34*temp) + 127;
if(выражение)
{
последовательность инструкций;
}
else
{
последовательность инструкций;
}
Нуль автоматически преобразуется в false, а все
ненулевые значения— в true. Это означает, что
любое выражение, которое дает в результате нулевое или ненулевое значение, можно
использовать для управления if-инструкцией.
// Деление первого числа на второе.
#include <iostream> using namespace std; int main()
{
int a, b;
cout << "Введите два числа: ";
cin >> a >> b;
if(b) cout << a/b << '\n';
else cout << "На нуль делить нельзя.\n";
return 0;
}
if(i) {
if(j) statement1;
if(k) statement2; // Эта if-инструкция
else statement3; // связана с этой else-
инструкцией.
}
else statement4; // Эта else-инструкция связана
с if(i).
Вложенная if-инструкция —
это инструкция, которая используется в качестве элемента инструкция любой другой if- или elsе- инструкции.
// Программа "Угадай магическое число":
#include <iostream> #include <cstdlib> using namespace std; int main()
{
int magic; // магическое число
int guess; // вариант пользователя
magic = rand(); // Получаем случайное число.
cout << "Введите свой вариант магического числа: ";cin >> guess;
if(guess == magic) {
cout << " ** Правильно **\n";
cout << magic << " и есть то самое магическое число.\n";
}
else {
cout << "...Очень жаль, но вы ошиблись.";
if(guess > magic) cout <<"Ваш вариант превышает магическое
число.\n";
else cout << " Ваш вариант меньше магического числа.\n";
}
return 0;
}
Конструкция if-else-if
Очень распространенной в программировании
конструкцией, в основе которой лежит вложенная if-инструкция, является "лестница" if-else-if.
Ее можно представить в следующем виде.
if(условие)
инструкция; else if(условие)
инструкция; else if(условие)
инструкция;
.
.
.
else
инструкция;
Итак, общий формат записи цикла for для
многократного выполнения одной инструкции имеет
следующий вид.
for(инициализация; выражение; инкремент)
инструкция;
Если цикл for предназначен для многократного выполнения не одной инструкции, а программного
блока, то его общий формат выглядит так.
fоr (инициализация; выражение; инкремент)
{
последовательность инструкций
}
#include <iostream>
#include <cmath> using namespace std; int main()
{
int num;
double sq_root;
for(num=1; num<100; num++) {sq_root = sqrt((double) num);
cout << num << " " << sq_root << '\n';
}
return 0;
}
#include <iostream> using namespace std; int main()
{
int i;
for(i=100; i>=-100; i=i-5) cout << i << ' ';
return 0;
}
for(count=10; count<5; count++)
cout << count; // Эта инструкция не
выполнится.
