Оцените презентацию от 1 до 5 баллов!
Тип файла:
ppt / pptx (powerpoint)
Всего слайдов:
20 слайдов
Для класса:
1,2,3,4,5,6,7,8,9,10,11
Размер файла:
539.42 kB
Просмотров:
65
Скачиваний:
1
Автор:
неизвестен
Слайды и текст к этой презентации:
№1 слайд![Четвертое занятие. Управление](/documents_6/536caf721a8b0753b9339c1e1e761b47/img0.jpg)
Содержание слайда: Четвертое занятие.
Управление памятью и указатели
№2 слайд![Структура памяти программы](/documents_6/536caf721a8b0753b9339c1e1e761b47/img1.jpg)
Содержание слайда: Структура памяти программы
№3 слайд![То что пока не пригодится](/documents_6/536caf721a8b0753b9339c1e1e761b47/img2.jpg)
Содержание слайда: То что пока не пригодится
Сегменте данных описывает переменные (выделяется память под глобальные переменные и массивы).
Сегмент кода содержит команды из нашей программы, которые будут исполнятся
Вопрос: почему глобальные массивы и переменные создаются без мусора?
№4 слайд![Сегмент стека Стек Стек это](/documents_6/536caf721a8b0753b9339c1e1e761b47/img3.jpg)
Содержание слайда: Сегмент стека (Стек)
Стек это непрерывная область оперативной памяти организованная по принципу LIFO (last in — first out, «последним пришёл — первым вышел»).
№5 слайд![Ограничения Размер данных](/documents_6/536caf721a8b0753b9339c1e1e761b47/img4.jpg)
Содержание слайда: Ограничения
Размер данных должен быть известен до компиляции
Размер стека ограничен (возможно переполнение стека)
№6 слайд![Динамическая память heap](/documents_6/536caf721a8b0753b9339c1e1e761b47/img5.jpg)
Содержание слайда: Динамическая память (heap)
структуры данных, с помощью которой реализована динамически распределяемая память приложения
№7 слайд![Схема выделения памяти в куче](/documents_6/536caf721a8b0753b9339c1e1e761b47/img6.jpg)
Содержание слайда: Схема выделения памяти в куче
Создание переменной для хранения адреса (Указатель)
Резервирование памяти
Запись адреса начала памяти в Указатель
№8 слайд![Указатель англ. pointer](/documents_6/536caf721a8b0753b9339c1e1e761b47/img7.jpg)
Содержание слайда: Указатель
(англ. pointer) — переменная, диапазон значений которой состоит из адресов ячеек памяти или специального значения — нулевого адреса. Имеет размер разрядности приложения.
№9 слайд![Использование amp - взятие](/documents_6/536caf721a8b0753b9339c1e1e761b47/img8.jpg)
Содержание слайда: Использование
& - взятие адреса у переменой
* - разыменование (получение значения по адресу)
Вопрос: что выведет программа?
№10 слайд![Осторожность не помешает! Си](/documents_6/536caf721a8b0753b9339c1e1e761b47/img9.jpg)
Содержание слайда: Осторожность не помешает!
Си позволяет легко выстрелить себе в ногу; с C++ это сделать сложнее, но, когда вы это делаете, вы отстреливаете себе ногу целиком.
№11 слайд![Первый выстрел](/documents_6/536caf721a8b0753b9339c1e1e761b47/img10.jpg)
Содержание слайда: Первый выстрел
2147483647 – 2147483392 = 255
№12 слайд![Теперь во вторую ногу](/documents_6/536caf721a8b0753b9339c1e1e761b47/img11.jpg)
Содержание слайда: Теперь во вторую ногу
№13 слайд![Зато весело](/documents_6/536caf721a8b0753b9339c1e1e761b47/img12.jpg)
Содержание слайда: Зато весело
№14 слайд![Работа с памятью malloc N -](/documents_6/536caf721a8b0753b9339c1e1e761b47/img13.jpg)
Содержание слайда: Работа с памятью
malloc(N) - выделяет блок памяти, размером N байт, и возвращает указатель на начало блока.
realloc(ptr, N) - выполняет перераспределение блоков памяти. Размер блока памяти, на который ссылается параметр ptr изменяется на N байтов. Блок памяти может уменьшаться или увеличиваться в размере.
calloc(num, size) - выделяет блок памяти для массива размером — num элементов, каждый из которых занимает size байт, и инициализирует все свои биты в нулями.
№15 слайд![Самая важная функция free](/documents_6/536caf721a8b0753b9339c1e1e761b47/img14.jpg)
Содержание слайда: Самая важная функция
free(void* ptr) - освобождает место в памяти. Блок памяти, ранее выделенный с помощью вызова malloc, calloc или realloc освобождается. То есть освобожденная память может дальше использоваться программами или ОС. ptr – указатель на память которую нужно освободить.
№16 слайд![А иначе плохо Утечка памяти](/documents_6/536caf721a8b0753b9339c1e1e761b47/img15.jpg)
Содержание слайда: А иначе плохо
Утечка памяти (англ. memory leak) - процесс неконтролируемого уменьшения объёма свободной оперативной или виртуальной памяти компьютера, связанный с ошибками в работающих программах, вовремя не освобождающих ненужные уже участки памяти
№17 слайд![Практика Средне](/documents_6/536caf721a8b0753b9339c1e1e761b47/img16.jpg)
Содержание слайда: Практика
Средне арифметическое произвольного количества чисел.
№18 слайд![Динамический двумерный массив](/documents_6/536caf721a8b0753b9339c1e1e761b47/img17.jpg)
Содержание слайда: Динамический двумерный массив
Представляет собой указатель на указатель.
№19 слайд![Практика Организовать не](/documents_6/536caf721a8b0753b9339c1e1e761b47/img18.jpg)
Содержание слайда: Практика
Организовать не прерывный ввод чисел в массив. Вывести максимальное и минимальное.
№20 слайд![Домашнее задание Организовать](/documents_6/536caf721a8b0753b9339c1e1e761b47/img19.jpg)
Содержание слайда: Домашнее задание
Организовать не прерывный ввод текста в консоль. Найти самое длинное слово и вывести его.