Содержание
- 2. Концепции организации ввода-вывода В языке C++, как и в C, не предусмотрены какие-либо возможности для организации
- 3. Два механизма ввода-вывода в C++ В программах на языке С++ можно равноправно использовать две библиотеки ввода-вывода:
- 4. Ввод-вывод в стиле ANSI C Описания функций, а также определения переменных и констант задаются в файлах
- 5. Файлы Термин «файл» включает в себя два понятия: именованная совокупность данных, хранящаяся на внешнем носителе и
- 6. Основные принципы работы с файлами Файл – конечная совокупность данных на внешнем носителе. Данные из файла
- 7. Механизм чтения данных из файла Смещаем текущую позицию на начало читаемой порции; Читаем очередную порцию A
- 8. Определение конца файла Прочитав последнюю порцию данных, мы ещё не знаем, что она последняя! Попытка следующего
- 9. Типы файлов В языке C++ файлы делятся на 2 типа: текстовые бинарные Текстовые файлы – совокупность
- 10. Описание файлов Файлы описываются с помощью указателей на внутреннюю структуру FILE. Знание полей этой структуры не
- 11. Открытие файлов Функция открытия файла имеет формат FILE *fopen (const char* имяфайла, const char* режимоткрытия) В
- 12. Открытие файлов (продолжение) Кроме того, в режиме открытия можно указывать символы t или b, которые соответствуют
- 13. Канва программы, работающей с файлом FILE *f; if ((f = fopen(”myfile.txt”, ”rt”)) != NULL) { //
- 14. Другие функции для работы с файлами Функция int ferror(FILE*) возвращает значение, не равное нулю, при возникновении
- 15. Типы ввода/вывода ввод/вывод строк ввод/вывод символов форматированный ввод/вывод (только для текстовых файлов)
- 16. Ввод/вывод нуль-терминированных строк Для чтения строки из файла и записи строки в файл используются функции char
- 17. Пример работы с текстовыми файлами Задача: текстовый файл input.txt содержит строки длиной не более 100 символов.
- 18. Посимвольный ввод/вывод При посимвольном вводе-выводе данные читаются из файла и записываются в файл блоками. За одну
- 19. Функции посимвольного ввода/вывода Чтение данных: size_t fread(void *буфер, size_t длинаблока, size_t числоблоков, FILE *файл) Запись данных:
- 20. Длина блока и количество блоков В функциях посимвольного ввода-вывода обычно указывается: Длина блока – 1, количество
- 21. Пример работы с файлом, содержащим совокупность записей Задача: Файл содержит несколько записей о студентах. Каждая запись
- 22. Пример работы с файлом, содержащим совокупность записей (продолжение) int main () { setlocale(LC_ALL, ".1251"); Student *st
- 23. Форматированный ввод/вывод При форматированном вводе/выводе происходит преобразование данных, так что в памяти и в файле данные
- 24. Функции форматированного ввода/вывода int scanf(const char * формат, [ адреса_переменных ] …) int fscanf(FILE* файл, const
- 25. Примеры спецификаций формата
- 26. Примеры спецификаций формата (продолжение)
- 27. Пример работы форматированного ввода/вывода Задача: В заданной матрице чисел типа double определить максимальный элемент в каждой
- 28. Пример работы форматированного ввода/вывода (продолжение) int main () { setlocale(LC_ALL, ".1251"); double Matr [10][10]; double Max;
- 29. Прямой доступ к файлу Для прямого доступа к содержимому файла используются функции long ftell(FILE* файл) int
- 30. Прямой доступ к файлу (продолжение) Параметр «начало» может иметь значения следующих констант: SEEK_CUR – относительно старой
- 31. Переназначение файлов Для переназначения файлов можно использовать функцию FILE *freopen(const char *имя_файла, const char * режим_открытия,
- 33. Скачать презентацию