Добавил:
Upload
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:lekcii_1_10 / Лекция 09.pptx
X
- •Спецификаторы типа const и volatile
- •Спецификатор типа const
- •Спецификатор const имеет ряд важных
- •// Этот код неверен.
- •Спецификатор const можно также
- •Переменная типа const может быть
- •Наконец, спецификатор const
- •Спецификатор типа volatile
- •int clock, timer;// ...
- •volatile int clock;
- •Спецификаторы классов памяти
- •Спецификатор класса памяти auto
- •Спецификатор extern объявляет переменную, но не выделяет для нее области памяти.
- •Статические переменные
- •Локальные static-переменные
- •Ключевое различие между
- •static int count;
- •int r_avg(int i); int main()
- •Глобальные static-переменные
- •Итак, имя локальной static-
- •Регистровые переменные
- •Спецификатор register в объявлении
- •int signed_pwr(register int m, register int e)
- •Перечисления
- •В следующем примере
- •Определив перечисление, можно
- •Важно понимать, что каждый
- •Несмотря на то что перечислимые
- •Откорректировать предыдущую
- •// Слово "McIntosh" на экран таким образом не попадет.
- •Отобразить на экране названия сортов яблок, связанных с переменной fruit.
- •Ключевое слово typedef
- •Общий формат записи инструкции typedef таков,
- •balance over_due;
- •Поразрядные операторы
- •Значение 223, используемое в
- •if(status & 8)
- •// Отображение конфигурации битов в байте. void disp_binary(unsigned u)
- •Поразрядный оператор ИЛИ, в
- •Введите число между 0 и 255: 99
- •Операторы сдвига
- •Здесь элемент число_битов
- •void disp_binary(unsigned u); int main()
- •Результаты выполнения этой программы таковы.
- •if(условие)
- •Оператор "?" называется
- •while(something)
- •Оператор "запятая"
- •Несколько присваиваний "в
- •Использование ключевого слова sizeof
- •int nums[4];
- •Динамическое распределение
- •Система динамического
- •Поскольку объем "кучи" конечен,
- •Выделение памяти для массивов
- •Динамическое распределение
- •Функция malloc() имеет такой
- •Сводная таблица приоритетов
Динамическое распределение
памяти в языке С:
функции malloc() и free()
Функция malloc() предназначена для выделения памяти,
а функция frее() — для ее освобождения.
Функция malloc() имеет такой
прототип,
void *malloc(size_t num_bytes);
Функция free() имеет такой прототип.
void free(void *ptr);
#include <iostream> #include <cstdlib> using namespace std; int main()
{
int *i; double *j;
i = (int *) malloc(sizeof(int));
if(!i) {
cout << "Выделить память не удалось.\n";
return 1;
}
j = (double *) malloc(sizeof(double));
if(!j) {
cout << "Выделить память не удалось.\n";
return 1;
}
*i = 10;
*j = 100.123;
cout << *i << ' ' << *j;
// Освобождение памяти.
free (i); free (j);
return 0; }
Сводная таблица приоритетов
С++-операторов
Соседние файлы в папке lekcii_1_10