Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 13 лет назад пользователемjeannekazakova
1 Лабораторная работа 7. Работа с динамической памятью, строками и файлами
2 Задание на лабораторную работу Необходимо обработать текстовый файл. В первой строке файла указано общее число строк. Выделить память под массив указателей на строки, ввести текст построчно, динамически выделяя память для хранения каждой строки и записывая указатель в массив. Вывести на экран исходный текст. Выполнить один из вариантов обработки текста. Программа реализуется на языках C или Pascal в соответствии с указанием преподавателя.
3 Язык программирования C Динамическое выделение памяти Данные, которые создаются, инициализируются и уничтожаются по требованию программиста называются динамическими. Для управления такими данными используются специальные стандартные функции, прототипы которых описаны в заголовочном файле (для некоторых компиляторов ). Для запроса динамической памяти служит функция malloc(), которая имеет следующий прототип: void * malloc(size_t size);
4 Типичная последовательность действий при работе с динамической памятью: double *A; int n;... n = 200;... A = (double *) malloc( n * sizeof(double) );... /* Работа с массивом A */... free(A);
5 Работа с файлами Файл – это поименованная область на диске, содержащая какую-либо информацию, например, текст программы, данные для программы, документ. Файлы бывают текстовые и двоичные (бинарные).
6 Работа с файлами Текстовые файлы – это файлы, которые создаются или которые можно просмотреть с помощью текстовых редакторов. В операционной системе MS DOS текстовые файлы представляют собой последовательность символьных строк. Каждый символ занимает один байт. Строка заканчивается двумя символами: «возврат каретки» (с кодом 13) и «перевод строки» (с кодом 10).
7 Работа с файлами Двоичные файлы содержат информацию во внутреннем представлении. Примером двоичного файла является exe-файл, содержащий программу в машинных командах. Прикладная программа тоже может создать двоичный файл, записав в него данные в том виде, в каком они хранятся в памяти (к примеру, типа int).
8 Для чтения информации из файла служат функции: fscanf() – форматированный ввод, fgets() – чтение одной строки, fgetc() – чтение одного символа, fread() – ввод заданного числа байтов (символов). Для записи информации в файл используются функции: fprintf() – форматированный вывод, fputs() – вывод строки, fputc() – вывод одного символа, fwrite() – вывод заданного числа байтов (символов).
9 Некоторые функции доступа к файлам fopen – открытие файла. Прототип функции: FILE * fopen (char * fname, char * mode); Первый параметр fname задает имя открываемого файла, второй – режим открытия файла или вид его обработки. Параметр mode может задаваться в виде: r – чтение файла, w – запись в файл (если файл существует, он стирается), a – добавление информации в конец файла, r+ – чтение и запись.
10 Пример FILE *fout, *fmod; /* указатели на выходной и модифицируемый файлы */ char fname[13]; /* имя модифиц. файла */ fout = fopen (f1.txt, w); puts(Введите имя модифицируемого файла); gets (fname); if ((fmod = fopen(fname, r+) ==NULL) { puts (Файл в текущем каталоге не найден); exit (1); }
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.