Читать курсовая по информатике, вычислительной технике, телекоммуникациям: "Динамическое распределение памяти" Страница 1
Министерство высшего и профессионального образования РФ
Уральский государственный технический университет
Радиотехнический факультет
Кафедра “Автоматика и информационные технологии” Динамическое распределение памятиКурсовая работа по дисциплине
основы алгоритмизации и программирования Выполнил:студент Золин А.С.
группаР-290Б
Проверил: Трофимов С.П.
Дата: Екатеринбург 2000
СодержаниеСодержание 1 Введение 2 Руководство пользователя 3 Задание №2 3 Задание №6 3 Задание №8 3 Задание №10 3 Задание №12 3 Задание №14 3 Задание №16 3 Руководство программиста 4 Задание №2 4 Задание №6 4 Задание №8 5 Задание №10 7 Задание №12 8 Задание №14 10 Задание №16 11 Библиографический список 14
ВведениеЦелью работы является демонстрация работы с динамической памятью на примере программ разработанных к заданиям 2, 6, 8, 10, 12, 14, 16 из методического указания [1].
Динамическое распределение памяти предоставляет программисту большие возможности при обращении к ресурсам памяти в процессе выполнения программы, и корректная работа программы с динамической памятью в существенной степени зависит от знания функций для работы с ней.
Руководство пользователяЗадание №2Для того чтобы убедиться что для каждого из однобайтовых данных в куче выделено 16 байт т.е. 1 параграф нужно сравнить три адреса, которые появяться на экран в рез-те действия этой программы. Если числа в этих адресах стоящие до двоеточия увеличиваютя (от первого к последнему) на еденичку, то это означает что на каждый блок выделен один параграф в куче = 16 байт. Для получения этих адресов в отладчике достаточно нажать Alt+F4 (в режиме отладчика) затем в появившемся запросе ввести *x появится меню, вверху которого и будет нужный адрес, аналогично для *y, *z.
Задание №6Программа выделяет память под 20 переменных типа int, заполняет их случайными числами из интервала [-3;7] и выводит их на экран.
Задание №8Программа хранит матрицы в виде двух структур:
Struct Matr1{int m, n; int *ptr};
Struct Matr2{int m, n; int **ptr};
И выделяет память под них с помощью следующих функций:
Int DinMatr1(Matr1 *matr);
Int DinMatr2(Matr2 *matr);
Задание №10Программа получает с клавиатуры натуральные числа, сохраняя их в куче, конец ввода – число 0. По окончании ввода числа выводятся на экран.
Задание №12Программа вычисляет октоэдрическую норму матрицы произвольных размеров.
Задание №14Программа вычисляет общий размер свободной кучи.
Задание №16Программа выполняет считывание матрицы произвольных размеров из файла (разделителями являются пробелы), вывод этой матрицы на экран, а также запись в файл.
Руководство программистаВ этом разделе будут приведены листинги программ с комментариями.
Задание №2#include
#include
#include
int main(void)
{
char *x,*y,*z;//Объявление переменных
x=(char *)malloc(sizeof(char));//Выделение динамической памяти для *x
y=(char *)malloc(sizeof(char));// --//-- *y
z=(char *)malloc(sizeof(char));// --//-- *z
clrscr();// Очистка экрана
printf("Adress of *x=%p\n",x); // Вывод на экран адреса начала блока для *x
printf("Adress of *y=%p\n",y); // --//-- *y
printf("Adress of *z=%p\n",z); // --//-- *z
free (z);// Освобождение блока выделенного для *z
free (y);// --//-- *y
free (x);// --//-- *x
/*
Для того чтобы убедиться что для
Похожие работы
| Тема: Динамическое распределение памяти |
| Предмет/Тип: Информатика, ВТ, телекоммуникации (Курсовая работа (п)) |
| Тема: Динамическое распределение памяти |
| Предмет/Тип: Информатика, ВТ, телекоммуникации (Реферат) |
| Тема: Динамическое распределение памяти |
| Предмет/Тип: Информатика, ВТ, телекоммуникации (Реферат) |
| Тема: Динамическое распределение памяти |
| Предмет/Тип: Информатика, ВТ, телекоммуникации (Практическое задание) |
| Тема: Динамическое распределение памяти |
| Предмет/Тип: Информатика, ВТ, телекоммуникации (Практическое задание) |
Интересная статья: Основы написания курсовой работы

(Назад)
(Cкачать работу)