Технология программирования
Методическое пособие - Компьютеры, программирование
Другие методички по предмету Компьютеры, программирование
?я ли идентификатор в текущий момент определенным, или нет, представляют собой гибкий механизм управления многими аспектами компиляции.
Контрольные вопросы:
1.Какой процессор включает в себя препроцессор Turbo С++?
2.Как рассматривается любая строка с ведущим символом #?
3.Расскажите о дерективах.
Лекция №6
Тема: Типы данных
План:
1.Типы данных: int, short, long, unsigned, float, double.
2.Объявления. Выражения и присваивания.
.Операции языка Си.
Простые типы в С++ делятся на целочисленные типы и типы с плавающей точкой. Для описания стандартных типов определены следующие ключевые слова:
int (целый);
char (символьный);
bool (логический);
float (вещественный);
double (вещественный с двойной точностью).
Существует четыре спецификатора типа, уточняющих внутреннее представление и диапазон значений стандартных типов:
short (короткий);
long (длинный);
signed (со знаком);
unsigned (без знака).
Таблица 1.3. Диапазоны значений простых типов данных для IBM PC
Тип Диапазон значенийРазмер (байт) Bool true и false 1 signed char -128 … 127 1 Unsigned char 0 … 255 1 signed short int -32 768 … 32 767 2 Unsigned short int0 … 65 535 2 signed long int-2 147 483 648 … 2 147 483 647 4 Unsigned long int 0 … 4 294 967 295 4 Float 3.4e-38 … 3.4e+38 4 Double 1.7e-308 … 1.7e+308 8 long double 3.4e-4932 … 3.4e+4932 10
Для вещественных типов в таблице приведены абсолютные величины минимальных и максимальных значений.
Все переменные должны быть объявлены раньше, чем будут использоваться, при этом некоторые объявления могут быть получены неявно - из контекста. Объявление специфицирует тип и содержит список из одной или нескольких переменных этого типа, как, например, в
int lower, upper, step;с, line[1000];
Переменные можно распределять по объявлениям произвольным образом, так что указанные выше списки можно записать и в следующем виде:
int lower;upper;step;
char c;line[1000];
Последняя форма записи занимает больше места, тем не менее она лучше, поскольку позволяет добавлять к каждому объявлению комментарий. Кроме того, она более удобна для последующих модификаций.
В своем объявлении переменная может быть инициализирована, как, например:
char esc = '\\';i = 0;limit = MAXLINE+1;eps = 1.0e-5;
Инициализация неавтоматической переменной осуществляется только один раз - перед тем, как программа начнет выполняться, при этом начальное значение должно быть константным выражением. Явно инициализируемая автоматическая переменная получает начальное значение каждый раз при входе в функцию или блок, ее начальным значением может быть любое выражение. Внешние и статические переменные по умолчанию получают нулевые значения. Автоматические переменные, явным образом не инициализированные, содержат неопределенные значения ("мусор).
К любой переменной в объявлении может быть применен квалификатор const для указания того, что ее значение далее не будет изменяться.
const double е = 2.71828182845905;char msg[] = "предупреждение: ";
Применительно к массиву квалификатор const указывает на то, что ни один из его элементов не будет меняться. Указание const можно также применять к аргументу- массиву, чтобы сообщить, что функция не изменяет этот массив:
int strlen(const char[]);
Реакция на попытку изменить переменную, помеченную квалификатором const зависит от реализации компилятора.
Таблица 1.5 Основные операции языка С++
ОперацияКраткое описаниеУнарные операции++увеличение на 1- -уменьшение на 1 sizeofразмер~поразрядное отрицание!логическое отрицание-арифметическое отрицание (унарный минус)+унарный плюс&взятие адреса*разадресацияnewвыделение памятиdeleteосвобождение памяти(type)преобразование типаБинарные операции*умножение/деление%остаток от деления+сложение-вычитание=сдвиг вправо с присваиванием&=поразрядное И с присваиванием|=поразрядное ИЛИ с присваиванием^=поразрядное исключающее ИЛИ с присваиванием,последовательное вычисление
Контрольные вопросы:
1.Какие спецификаторы типов вы знаете?
2.Перечислите простые типы данных в С#.
.Как осуществляется инициализация переменной ?
Лекция №7
Тема: Операторы языка Си
План:
1.Условный оператор
2.Оператор выбора
.Операторы goto, break, continue
Оператор "выражение"
Любое выражение, завершающееся точкой с запятой, рассматривается как оператор, выполнение которого заключается в вычислении выражения. Частным случаем выражения является пустой оператор ; (он используется, когда по синтаксису оператор требуется, а по смыслу - нет). Примеры:
i++;//выполняется операция инкремента* = b + c;//выполняется умножение с присваиванием
fund (k).// выполняется вызов функции
Операторы ветвления.
Инструкция if-else используется для принятия решения. Формально ее синтаксисом является:
if (выражение)
инструкция1
инструкция2
причем else-часть может и отсутствовать. Сначала вычисляется выражение, и, если оно истинно (т. е. отлично от нуля), выполняется инструкция1. Если выражение ложно (т. е. его значение равно нулю) и существует else-часть, то выполняется инструкция2.
Пример:
if (а > b)= а;= b;
Оператор