- •Управление esc – последовательность (с примерами)
- •4. Определение констант и их характеристика (const,define,enum)
- •5. Форматные потоки в с. Функции fPrintf(), Fscanf(), и модификации (с примерами). Спецификаторы
- •7. Перегруженные операции.
- •8. Инструкция ветвления. (пример)
- •9. Инструкция switch()
- •10. Применение инструкции switch() для создания текстового меню.
- •11. Инструкция цикла.
- •12. Инструкция перехода.
- •13. Указатели. Операции над указателями. Косвенная адресация.
- •14. Ссылки (пример)
- •15. Статические числовые одномерные
- •16. Статические числовые двумерные массивы.
- •17. Динамическая память.
- •18. Выделение памяти под динамический одномерный и двумерный массив.
- •19. Алгоритм удаления и добавления данных в массив.
- •20. Глобальные, локальные, статические, внешние переменные.
- •21. Классы памяти.
- •22. Формальные и фактические параметры.
- •23. Функции.
- •24. Виды передачи параметров в функцию.
- •25.Функции и массивы
- •26. Функции с переменным числом параметров.
- •27. Шаблоны функции.
- •28.Рекурсии. Фреймы.
- •29. Функция Main()
- •30. Стеки.
- •31. Очереди.
- •33. Строки, как массив символов.
- •34. Функции ввода строковых переменных.
- •35.Основные функции обработки строковых переменных.
- •37. Функции преобразования типов.
- •38. Строки типа string.
- •40. Функции работы с памятью. Memcmp - сравнивает две области памяти
- •41. Структуры
- •42. Вложенные структуры.
- •43. Объединения (union)
- •44.Передача переменных определенных пользователем в функцию.
- •50. Функция определения конца файла.
- •51. Файловый поток.
- •52. Функции tellg и ftell
- •53. Установка файлового указателя
- •55. Обработка текстовых файлов.
- •56. Бинарный файл.
-
Стандартные типы данных. Преобразование типов в с/с++.
Базовые типы данных
-
bool (логический);
-
char (символьный);
-
wchar_t (широкий символьный);
-
int (целый);
-
float (вещественный);
-
double (вещественный с двойной точностью).
Существует четыре ключевых слова, уточняющих внутреннее представление и диапазон значений стандартных типов:
-
short (короткий);
-
long (длинный);
-
signed (знаковый);
-
unsigned (беззнаковый).
Неявные
Операции преобразования типа:
В Си используется автоматическое приведение типа при вычислениях (при вычислениях с различными типами данных):
Правила:
1)тип char приводится к short;
2)short - к int;
3)signed - к unsigned;
4)все целые типы преобразуются к long, а long - к unsigned long;
Результат операции в скобках приводится к double перед умножением.
Явное приведение типа.
Правила:
1. Целое со знаком преобразуется к более короткому целому со знаком путем усечения старших бит.
Целое со знаком преобразуется к более длинному целому со знаком путем размножения знаков.
2. При преобразовании целого со знаком к целому без знака целое со знаком преобразуется к размеру целого без знака и результат интерпретируется как целое без знака.
3. Преобразование целого со знаком к плавающему типу происходит без потери информации, за исключением случая преобразования типа long к float, тогда точность может быть частично потеряна.
4. Целое без знака преобразуется к более длинному целому со знаком путем расширения нулем.
5. Когда целое без знака преобразуется к целому со знаком того же размера, битовый шаблон не изменяется, однако значение, которое оно представляет, изменяется, если знаковый бит установлен.
6. Величина типа float преобразуется к double без изменения значений. Величины double, преобразованные к float, представляются точно, если это возможно.
7. При преобразовании величины с плавающей точкой к целым типам они сначала преобразуются к типу long, при этом дробная часть отбрасывается, а затем величины типа long преобразуются к требуемому типу. Если значение слишком велико для long, то результат будет не определён (отбрасывается младшая часть мантиссы)
-
Управление esc – последовательность (с примерами)
Управляющая последовательность (по-другому — escape-последовательность) представляет собой определенный символ, перед которым стоит обратная косая черта (обратный слэш). При этом два эти знака считаются за один символ. Escape-последовательности необходимы для обозначения символов, не имеющих графического представления (например, \n — переход на новую строку), а также для символов, которые имеют специальное значения в символьных и строковых константах, например, апостроф. В таблице ниже приведены все допустимые значения управляющих последовательностей.
Управляющие последовательности символов
\a Звуковой сигнал (звонок)
\b Возврат на одну позицию (забой)
\f Подача страницы (для перехода к началу следующей странице)
\n Переход на новую строку
\r Возврат каретки
\t Горизонтальная табуляция
\v Вертикальная табуляция
\0 Нуль-символ
\' Апостроф (одинарная кавычка)
\" Двойная кавычка
\\ Обратная косая черта
Пример. cout << "Ура! Оператор присваивания сработал!\ n ";
3. Арифметические и логические операции в с++
Математическая операция
* Умножение
/ Деление и целочисленное деление нацело
% Деление по модулю и остаток от деления
+ Сложение
- Вычитание
Операции Описание
= = Равно
> Больше
< Меньше
>= Больше или равно
<= Меньше или равно
!= Не равно
% Взятие по модулю или остаток; возвращает остаток целочисленного деления
~ Дополнение; инвертирует биты значений
& Побитовое И
| Побитовое включающее ИЛИ
^ Побитовое исключающее ИЛИ
<< Сдвиг влево; сдвигает биты значения влево на указанное количество разрядов
>> Сдвиг вправо; сдвигает биты значения вправо на указанное количество разрядов
4. Определение констант и их характеристика (const,define,enum)
-
Таким образом, используя модификатор const можно определить неизменяемые переменные – константы.
В константе явно или не явно присутствует тип. По умолчанию константа будет принадлежать к типу наименьшего возможного размера. Однако, используя суффикс (символ после значения константы) можно явно указать тип. Если после вещественного числа в экспоненциальной форме присутствует символ F, то константа принадлежит к типу float, а если символ L – то к типу long double. Для целых чисел суффикс U обозначает unsigned, L – long.
const double pi=3.141592653589793
-
Константа может быть определена до главной функции main. В этом случае можно использовать директиву #define. Например, для определения константы p можно перед фунцией main вставить строку
#define PI 3.141592653589793
Если в тексте программы будет встречаться имя PI, оно автоматически будет заменяяться значением 3.141592653589793.
-
самый совместимый (и самый уродский в случае _одной_ константы ):
enum Constants {SIZE = 50};
Т.к. содержимое enum обявляется на уровне описания самого enum , то Constants::SIZE обязательным не является, можно (да и нужно) просто SIZE.
Минус - единственный тип констант это int (ну или как там ваш компилятор трактует enum )