- •Вирази і оператори.
- •Логічні оператори.
- •Оператор розгалуження.
- •Оператор вибору.
- •Арифметичні операції. Пріоритет виконання.
- •Вказівники константи.
- •Вказівники змінні.
- •Функції.
- •Функція для роботи з файлами.
- •Передача аргументів у функцію.
- •Значення, яке повертає функція.
- •Рекурсивні функції.
- •Блоки і область видимості змінних.
- •Оператори повторення.
- •Структури. Вкладені структури.
- •Створення класів.
- •Управління виконанням програм.
- •Одновимірні масиви даних.
- •Двовимірні масиви даних.
- •Створення масивів з використанням вказівників.
- •Алгоритми сортування масивів.
- •Рядки і операції над ними.
- •Функції введення-виведення.
- •Конструктори, деструктори.
- •Класи. Успадкування.
- •Класи. Поліморфізм.
- •Класи. Інкапсуляція.
- •Вказівник this.
- •Перевантаження операцій та операторів.
- •Поліморфізм і віртуальні функції.
- •Стандартний клас string.
- •Стандартний клас queue.
- •Стандартний клас vector.
- •Стандартний клас list.
- •Стандартний клас stack.
- •Створення і використання шаблонів функцій та класів.
- •Стандартна бібліотека шаблонів (stl)
- •Доступність методів класу.
- •Конструктор та деструктор класів.
- •Наслідування класів.
- •Використання просторів імен.
- •Шаблони функцій.
- •Шаблони класів.
- •Алгоритми стандартної бібліотеки stl.
- •Динамічні структури типу стек.
- •Динамічні структури типу однонаправлений список.
- •Динамічні структури типу двонаправлений список.
- •Сортування масивів із використанням вказівників.
Оператор вибору.
Переключатель определяет множественный выбор.
switch (выражение)
{
case константа1 : оператор1 ;
case константа2 : оператор2 ;
. . . . . . . . . . .
}
При выполнении оператора switch, вычисляется выражение, записанное после switch, оно должно быть целочисленным. Полученное значение последовательно сравнивается с константами, которые записаны следом за case. При первом же совпадении выполняются операторы помеченные данной меткой
Арифметичні операції. Пріоритет виконання.
Арифметические операторы
В языке C и C++ позволяют использовать следующие сем арифметических операторов.
Оператор |
Действие |
- |
Вычитание, унарный минус |
+ |
Сложение |
* |
Умножение |
/ |
Деление |
% |
Деление по модулю |
-- |
Декримент |
++ |
Инкремент |
Оператор % возвращает остаток от деления нацело.
Эти операторы подчиняются следующему порядку действий.
Приоритет |
Операторы |
Наивысший |
++ -- - (унарный минус) * / % |
Низший |
+ - |
Вказівники константи.
Указатель — это адрес памяти, распределяемой для размещения идентификатора (в качестве идентификатора может выступать имя переменной, массива, структуры, строкового литерала). В том случае, если переменная объявлена как указатель, то она содержит адрес памяти, по которому может находится скалярная величина любого типа. При объявлении переменной типа указатель, необходимо определить тип объекта данных, адрес которых будет содержать переменная, и имя указателя с предшествующей звездочкой (или группой звездочек).
Припустимо, що ми хочемо виконати дію *(intarray++), чи можна це зробити?
Якщо вказівник є константою, то ми не можемо виконувати над ним дії (так само, як некоректним буде запис «7++»), якщо нам треба наступний елемент масиву, то ми записуємо *(intarray+1)
Ми не можемо «збільшити» адресу, але можемо збільшити вказівник, який містить цю адресу.
Вказівники змінні.
Указатель — это адрес памяти, распределяемой для размещения идентификатора (в качестве идентификатора может выступать имя переменной, массива, структуры, строкового литерала). В том случае, если переменная объявлена как указатель, то она содержит адрес памяти, по которому может находится скалярная величина любого типа. При объявлении переменной типа указатель, необходимо определить тип объекта данных, адрес которых будет содержать переменная, и имя указателя с предшествующей звездочкой (или группой звездочек).
Припустимо, що ми хочемо виконати дію *(intarray++), чи можна це зробити?
Якщо вказівник є константою, то ми не можемо виконувати над ним дії (так само, як некоректним буде запис «7++»), якщо нам треба наступний елемент масиву, то ми записуємо *(intarray+1)
Ми не можемо «збільшити» адресу, але можемо збільшити вказівник, який містить цю адресу.
У прикладі ми визначили вказівник на int – ptrint , а потім присвоїли йому значення адреси масиву intarray. Тепер ми можемо отримати доступ до елементів масиву, використовуючи вираз *(intarray++)
Змінна
ptrint має ту саму адресу, що і intarray, тому
доступ до першого елемента масива
intarray[0], значенням якого є 31, ми можемо
втілювати, як і раніше. Але, так як змінна
ptrint не є константою, ми можемо її
збільшувати. Після збільшення вона буде
вказувати на другий елемент масиву
.
Значення цього елемента масива ми можемо
отримати, використовуючи вираз
.
Збільшуючи далі
,
ми можемо отримати доступ до кожного
елемента масиву по черзі.
