
- •Омск 2007
- •Введение
- •1. Этапы разработки программного обеспечения
- •2.1 Операции
- •Приоритеты операций
- •2.2 Операторы языка Си
- •9. Оператор break;
- •10. Оператор continue;
- •2.3 Перегрузка функций
- •2.4 Перегрузка операций
- •2.5 Шаблоны функций
- •2.6 Возврат из функции нескольких значений
- •2.7 Стандартные типы данных
- •Типы данных
- •2.8 Типы, определяемые пользователем
- •2.8.1 Структуры
- •2.8.2 Поля битов
- •2.8.3 Объединения Используются для хранения значений различных типов в одной и той же области памяти, но не одновременно.
- •Пример: а) union u int I; б) struct s int I;
- •2.8.4 Перечисления
- •2.8.5 Переименование типов typedef
- •Объявление typedef применяется:
- •2.9 Файлы
- •2.11 Директивы препроцессора Условная компиляция
- •Оператор defined или знак операции препроцессора
- •Директивы #ifdef и #ifndef
- •Директива #error
- •Директива #line
- •Предопределенные макросы
- •Директива #pragma
- •3. Объектно-ориентированное программирование
- •3.1 Объект
- •3.2 Управление доступом к элементам и функциям класса
- •3.3 Конструкторы и деструкторы
- •Деструктор
- •Конструктор с параметрами
- •3.4 Аргументы функций, задаваемые по умолчанию
- •3.5 Дружественные функции и классы
- •Дружественные классы
- •3.6 Наследование классов
- •3.7 Конструкторы с параметрами при наследовании
- •3.8 Множественное наследование
- •3.10 Полиморфизм
- •Ключевое слово this
- •3.11 Использование виртуальных функций
- •3.12 Виртуальные базовые классы
- •4. Организация выполнения курсовой работы
- •4.1 Этапы выполнения курсовой работы
- •4.2 Требования к пояснительной записке
- •4.3 Задания на курсовое проектирование
- •4.3.1 Проектирование пакетов прикладных программ для предприятий
- •4.3.2 Разработки для учебного процесса
- •4.3.3 Задание на разработку типового проекта - компилятора языка и стекового калькулятора
- •Индивидуальное задание
- •Состав пакета
- •Варианты заданий
- •Библиографический список
- •Курсовой проект (работа)
- •Пример оформления листа задания к курсовому проектированию
- •Задание
- •Студент Азанова Александра Александровна группа в-515
- •Аннотация
- •Оглавление
- •Структура слайд-доклада
- •Структура-компонент проекта
2.1 Операции
Все операции в языке СИ подразделяются на унарные (с одним операндом), бинарные (с двумя операндами) и тернарную (с тремя операндами). Тернарной является только одна условная операция. Операции и их приоритеты сведены в таблице 1.
Таблица 1
Приоритеты операций
Вес |
Знак |
Наименование операции |
Тип операции |
Порядок |
1 |
( ) [] .
-> |
вызов функции выделение элемента массива выделение элемента структуры или объединения выделение элемента структуры или объединения, адресуемой (го) указателем |
Выражение |
Слева направо |
2 |
! ~ - ++ -- & * (тип) sizeof |
логическое отрицание побитовое отрицание изменение знака (унарный минус) увеличение на единицу (инкремент) уменьшение на единицу (декремент) определение адреса обращение по адресу преобразование типа определение размера в байтах |
унарные |
Справа налево |
3 |
* / % |
умножение деление определение остатка от деления по модулю |
бинарные арифмети-ческие |
Слева направо |
4 |
+ - |
сложение вычитание |
бинарные арифмет. |
Слева направо |
5 |
<< >> |
сдвиг влево сдвиг вправо |
сдвига |
Слева направо |
6 |
< <= > >= |
меньше чем меньше или равно больше чем больше или равно |
отношения |
Слева направо |
7 |
== != |
равно неравно |
отношения |
Слева направо |
8 |
& |
побитовая операция "И"
|
поразрядная |
Слева направо |
Продолжение табл. 1
Вес |
Знак |
Наименование операции |
Тип операции |
Порядок |
9 |
^ |
побитовая «исключающее "ИЛИ"» |
поразрядная |
Слева направо |
10 |
| |
побитовая "ИЛИ" |
поразрядная |
Слева направо |
11 |
&& |
логическая операция "И" |
логическая |
Слева направо |
12 |
|| |
логическая операция "ИЛИ" |
логическая |
Слева направо |
13 |
? : |
условная операция |
тернарная |
Справа налево |
14 |
= += -= *= /= %=
<<=
>>=
&=
|=
^=
|
простое присваивание сложение с присваиванием вычитание с присваиванием умножение с присваиванием деление с присваиванием выделение остатка от деления с при- сваиванием сдвиг двоичного числа влево с присваиванием сдвиг двоичного числа вправо с присваиванием побитовая операция "И" с присваиванием поразрядная операция "ИЛИ" c присваиванием исключающее "или" с присваиванием |
присваи-вания
бинарные
(для двоичных операндов) |
Справа налево |
15 |
, |
операция "запятая" (соединения) |
Бинарная |
Слева направо |