Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛР1 - Ввод-вывод в языке программирования C.DOC
Скачиваний:
2
Добавлен:
01.07.2025
Размер:
84 Кб
Скачать
☆

Стандартные типы данных в с

int (Числа с фиксированной точкой)

Диапазон представления чисел: от -32768 до +32767.

В памяти занимает 2 байта.

char (Символьный тип)

Все символы таблицы ASCII.

В памяти занимает 1 байт.

float (Числа с плавающей точкой)

Диапазон представления чисел: от -3.4*10-38 до 3.4*1038.

В памяти занимает 4 байта.

double (Числа с плавающей точкой двойной точности)

Диапазон представления чисел: от -1.7*10-308 до 1.7*10308.

В памяти занимает 8 байт.

Файловый ввод-вывод

Под файлом будет подразумеваться порция информации на диске со своим именем. Часто бывает необходимо ввести некоторые данные из файла или вывести результаты в файл. Например, бывает необходимо обрабатывать массивы, которые слишком велики, чтобы полностью разместится в памяти.

Для работы с файлом в языке C необходима ссылка на файл. Для определения такой ссылки существует структура FILE, описанная в файле stdio.h. Данная структура содержит все необходимые поля для управления файлами, например: текущий указатель буфера, текущий счетчик байтов, базовый адрес буфера ввода-вывода, номер файла.

Открытие файла

Перед использованием файла в программе его необходимо открыть. Для этого существует функция fopen().

Пример использования функции:

FILE *new;

new=fopen(“text.txt”,”r”);

Данная функция имеет два аргумента:

  1. имя файла (если файл находится не в текущей директории, то имя файла может включать в себя путь);

  2. аргумент, определяющий способ открытия файла. Приведем основные значения данного аргумента:

“r” : считывание из файла;

“w”: запись в файл;

“a” : дополнение файла;

“r+”: открытие существующего файла для корректировки (чтение и запись);

“w+”: создание нового файла для корректировки (чтение и запись). Если файл с этим именем уже существует, он будет переписан;

“a+”: открытие для добавления. Открывает (или создает если файл не существует) файл, для записи в конец файла.

При открытии файла в режиме “r” открывается существующий файл. Если же использованы режимы “w” и “a”, и файл с указанным именем не найден, то создается новый файл.

Если использовать режим “w” для существующего файла, то его содержимое стирается, и только затем происходит запись.

Если добавить “t” (например “rt”, ”w+t”), то файл отрывается в текстовом режиме, а при добавлении “b” (“ab”, “r+b”) – в двоичном режиме.

По умолчанию файл открывается в текстовом режиме.

Функция при успешном открытии возвращает указатель на файл, а при неудачном – значение ‘NULL’, определенное в stdio.h как 0.

Закрытие файла

Чтобы закрыть открытый ранее файл, необходимо воспользоваться функцией fclose().

Пример использования функции:

int close_result;

close_result=fclose(new);

Аргументом функции является указатель на файл, который необходимо закрыть. Функция возвращает значение 0, если файл был закрыт успешно, и –1 в противном случае.

Ввод-вывод одиночного символа в файл

Выполняется при помощи функций getc() и putc().

Данные функции выполняют считывание и, соответственно, запись одиночного символа в файл. Рассмотрим пример их использования в программе:

FILE *in, *out;

char ch;

ch=getc(in); /* считывание символа из файла, на который указывает in*/

putc(ch, out); /* запись считанного символа в файл, на который указывает out */

Функция getc() использует в качестве параметра указатель на файл, а возвращает считанный символ. Напротив, функция putc() использует два аргумента: символ, который выводится в файл и указатель на этот файл. При успешном выполнении функция возвращает выведенный символ, а при ошибке – EOF.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]