- •4. Идентификаторы. Ключевые слова. Алфавит языка.
- •5. Этапы получения загрузочного файла. Понятие консольного приложения.
- •6.Стандартные типы данных. Типы данных для представления целых чисел.
- •20.Операторы цикла while, do … while. Варианты выражений. Бесконечные циклы.
- •21.Оператор цикла for. Варианты выражений. Тело цикла. Пустой оператор for. Оператор без тела цикла.
- •22. Операторы goto, break, continue, return. Варианты использования.
- •23.Массивы. Индексация, инициализация, размещение элементов в памяти. Определение размера массива.
- •24.Многомерные массивы. Инициализация многомерных массивов. Размещение элементов в памяти.
- •25.Строки. Представление строк. Длина строки. Варианты инициализации строк.
- •31.Область существования имени. Виды областей существования имени
- •32.Область видимости имени. Операция разрешения контекста.
- •33. Классы памяти.
- •34.Структуры. Элементы структуры. Массивы структур.
- •35.Структуры. Передача структур в функции.
- •36.Структуры. Битовые поля в структурах.
- •37.Объединения.
- •38.Перечисления.
- •39.Работа с файлами. Потоки. Буфер.
- •40.Библиотека stdio. Связь с файлами. Открытие и закрытие файла.
- •41.Библиотека stdio. Текстовые файлы – чтение и запись.
- •42.Библиотека stdio. Форматированный ввод/вывод.
- •43.Библиотека stdio. Функция fseek().
- •44.Работа с файлами. Переключение ввода/вывода.
- •45.Операторы времени компиляции inline и typedef.
- •46.Директива препроцессора #define. Макросы с формальными параметрами.
- •47.Директивы условной компиляции. Директивы #if, #else, #elif и #endif
С++. История языка. Достоинства и недостатки языка.
История языка С++
1)Algol 60-Предок С++ 1960
2)CPL 1963
3)BCPL 1967
4)B 1970 К.Томпсон
5)С 1972 Д.Ритчи
6)С++ 1997 Бьёрн Страуструп
Достоинства и недостатки языка С++
+ Оптимальный размер программы
+ Быстрое выполнение программы
+Упрощенный контроль за типами данных
+Возможность использования кодов Ассемблера
+Возможность упрощения отдельными видами битами
+Наличие указателей
+Эффективное использование памяти
+Возможность кросс-платформенной переносимости
-Упрощенный контроль за типами данных
-Язык С++ не для любителя
-ограниченные средства управлением
2. MS Visual C++ 6.0. Состав проекта приложения. Понятие рабочей области.
Среда разработки Microsoft Visual C++ 6 состоит из:
редактора исходных текстов
компилятора
компоновщика
отладчика.
Рабочая область – область которая, позволяет работать одновременно с несколькими проектами, легко переключаясь между ними. Рабочая область объединяет проекты, связанные по смыслу . Физически рабочая область - это отдельная папка на диске.
3. С++. Компиляция и компоновка.
Компиляция:
Build-Compile(Ctrl+F7)
Иконка 3 файла и 1 стрелка
Build-Build(F7)
Иконка 3 файла и 2 стрелки
Запуск программы
Build-Execute(Ctrl+F5)
Иконка восклицательного знака
4. Идентификаторы. Ключевые слова. Алфавит языка.
Идентификатор — это имя программного объекта. В идентификаторе могут использоваться латинские буквы, цифры и знак подчеркивания.
Ключевые слова — это зарезервированные идентификаторы, которые имеют специальное значение для компилятора. Их можно использовать только в том смысле, в котором они определены.
asm else new this auto enum operator throw bool explicit private true break export protected try case extern public typedef catch false register typeid char float reinterpret_cast typename class for return union const friend short unsigned const_cast goto signed using continue if sizeof virtual default inline static void delete int static__cast volatile do long struct wchar_t double mutable switch while dynamic_cast namespace template
Алфавит C++ включает:
прописные и строчные латинские буквы и знак подчеркивания;
арабские цифры от 0 до 9;
специальные знаки: ? { } , ¦ [ ] ( ) + – / % * . \ ‘ : ? < = > ! & # ~ – ; ^
пробельные символы: пробел, символы табуляции, символы перехода на новую строку.
5. Этапы получения загрузочного файла. Понятие консольного приложения.
Сначала создается рабочее место:
File-New-Workspace
Далее создается проект:
File-New-Project-Win32ConsoleApplication
И создается файл:
File-New-Files-C++SourceFile
Консольное приложение - командная строка. Работа с консолью заключается во вводе текстовых команд
6.Стандартные типы данных. Типы данных для представления целых чисел.
int |
4 |
Целые числа от -2147483648 до 214748364 в 32 bit |
char |
1 |
Текст от -128 до 127 |
void |
— |
Ничего |
enum |
— |
Перечисления |
float |
4 |
Вещественные +/-3.4Е +/-38 |
double |
8 |
Двойной точности +/-1,8Е +/-308 |
bool |
1 |
true / false (1/0) |
7.Стандартные типы данных. Типы данных для представления чисел с плавающей запятой.
Как и 6
8.Стандартные типы данных. Тип данных bool.
Как и 6
9.Стандартные типы данных. Модификаторы и квалификаторы.
Как и 6
Модификаторы:
1)unsigned-число без знаков (0-255)
2)signed(-127-128)
3)short
4)long
Квалификатор
const-неизменная
10.Стандартные типы данных. Преобразование типов.
Как и 6
Int x=4;
Double y=7.8;
Char c=’z’;
11.Операции языка С++. Понятие операнда и результата операции. Унарные, бинарные и тернарные операции. Операция присваивания. Понятие адресного выражения.
Операнд - объект , над которым производятся операции. Бинарная операция — операция принимающая два аргумента и возвращающая один результат:
x+y
Унарная операция — это операция над одним операндом
Тернарная:
логическое выражение ? выражение 1 : выражение 2
Операции присваивания:
x=7
a=b=c=x=0
x=7+(y=8)
Адресное выражение - имя какого либо обьекта.(L-value)
L-имя,Value-значение.
12.Операции языка С++. Арифметические операции. Инкремент и декремент.
+ сложение
- вычитание
* умножение
/ деление
% остаток от целочисленного деления
++-инкремент
-- -декремент
x++
x=x+1
x--
x=x-1
13.Операции языка С++. Операции сравнения. Тернарная операция.
<
>
<=
>=
==равно
!=не равно
логическое выражение ? выражение 1 : выражение 2
истина ложь
y=x>0?7:10
y=7 если x>0
y=10 если x<0
14.Операции языка С++. Логические значения и логические операции.
1-true
2-false
! не (против)
&& и
|| или
15. Операции языка С++. Битовые операции. Операции сдвига.
~ (не) на той позиции, где в двоичном представлении операнда был 0, в результате будет 1, и, наоборот, где была 1, там будет 0.
Например:
10001100
Результат
01110011
&(и) если оба соответствующих бита операндов равны 1, результирующий двоичный разряд равен 1; если же хотя бы один бит из пары равен 0, результирующий двоичный разряд равен 0.
Пример:
10001100
10010110
Результат
10000100
|(или) если оба соответствующих бита операндов равны 0, двоичный разряд результата равен 0; если же хотя бы один бит из пары равен 1, двоичный разряд результата равен 1.
Пример:
10000110
01101100
Результат
11101110
^( Искл. ИЛИ) если соответствующие биты операндов различны, то двоичный разряд результата равен 1; если же биты совпадают, то двоичный разряд результата равен 0.
Пример:
10000110
01101100
Результат
00010101
Операции сдвига
<<
>>
y=x<<1,x=4
x:00000100|4
y:00001000|8
16.Операции языка С++. Приоритет и направление выполнения операций.
Приори-тет |
Операция |
Примечание |
Порядок выполнения |
1 |
:: . [ ] ( ) (int) |
разрешение контекста, извлечение индексирование массива вызов функции преобразование типа |
слева - направо |
2 |
++ -- ~ ! - + & * new,delete sizeof |
унарный -, унарный + получение адреса разрешение указателя работа с динамической памятью определение размера |
справа - налево |
3 |
* / % |
умножение деление остаток |
слева - направо |
4 |
-> * .* |
извлечение |
слева - направо |
5 |
+ - |
бинарное сложение бинарное вычитание |
слева - направо |
6 |
<< >> |
сдвиги |
слева - направо |
7 |
< <= > => |
сравнение |
слева - направо |
8 |
= = != |
равно не равно |
слева - направо |
9 |
& |
побитовое И |
слева - направо |
10 |
^ |
исключающее ИЛИ) |
слева - направо |
11 |
| |
побитовое ИЛИ |
слева - направо |
12 |
&& |
И - логическое |
слева - направо |
13 |
|| |
ИЛИ - логическое |
слева - направо |
14 |
?: |
тернарная операция |
справа - налево |
15 |
= *= /= %= += |
операция присвоения |
справа - налево |
16 |
, |
следование |
слева - направо |
17. Операторы языка С++. Пустой оператор, оператор-выражение, оператор объявления, блок операторов.
Пустой оператор(;) Используется там, где по правилам языка должен находится оператор, а по логике программы там ничего выполнять не надо.
Любое выражение, за которым следует ; является оператором. Такой оператор называется оператор-выражение.
a=b+c;
i++;
x+y;
Объявления переменных являются операторами языка и могут стоять там, где возможен любой другой оператор.
Блок операторов используется для обозначения начала и конца оператора
18.Операторы языка С++. Условный оператор if. Варианты вложения условных операторов.
1) if (выражение) оператор1;
2) if (выражение) оператор1; else оператор2;
Оператор1 выполняется в случае, если выражение принимает ненулевое значение. Если выражение принимает значение 0 ,то выполняется оператор2.
При использовании нескольких if, текущий else всегда относится к последнему if с которым не cопоставлен ни один else.
19.Операторы языка С++. Оператор выбора switch.
switch (селектор)
{
case константа1:
[case константа2: ]
. . .
[оператор;]
. . .
[break;]
[case константа_m:]
. . .
[case константа_n:]
[оператор;]
. . .
[break;]
[default:] [операторы]
}
[ ]-необязательно
… -может повторяться