Информатика -продвинутый курс


ФУНКЦИИ ВВОДA-ВЫВОДА - часть 3


/p>

 

Для работы с файлами в Си используются функции буферизованной системы ввода-вывода, табл. 3.4. Обращение к ним использует указатель файла, который определяет различные характеристики файла, включая его имя, статус и текущую позицию; используется связанным с этим файлом потоком для привязки каждой функции буферированного ввода-вывода к месту, над которым она выполняет свои операции. Указатель файла является переменной типа FILE, которая определяется в файле заголовков stdio.h.

Функция fopen() вызывается так:

 

fореn(<имя_файла>, <режим>);

 

Имя файла должно быть цепочкой символов, которая составляет правильное имя файла для операционной системы и может включать спецификацию пути. Режим задает желаемый статус открытия, табл.3.5.

 

Таблица 3.5

Значения режимов в Турбо-Си

 

Режим

Смысл

"r"

"w"

"а"

"r+"

"w+"

''а+"

Открыть файл для чтения

Создать файл для записи

Добавлять в файл

Открыть файл для чтения/записи

Создать файл для чтения/записи

Открыть или создать файл для чтения/записи

 

Например, для того чтобы открыть файл с именем test для записи, можно написать

 

fp = fopen("test", "w");

где fp -переменная типа FILE*. Переменная fp является указателем файла.

Следующий оператор обнаруживает любую ошибку при открытии файла, такую, как, например, попытку открыть защищенный от записи диск или заполненный диск, прежде чем состоится попытка записи на него:

if((fp = fopen("tesf, "w"))==NULL)

{

рuts("Нельзя открыть файл!\n");

exit(l);

}

 

NULL - это макро, которое определяется в файле заголовка stdio.h.

Функция putc() в виде

 

рuts(<символ>, fp);

 

используется для записи символа в поток, который предварительно открыт для записи с помощью функции fopen(); fp - возвращаемый функцией fopen() указатель файла.

Функция getc() в виде

 

getc(fp)

 

используется для чтения символов, которые она возвращает из потока, открытого в режиме чтения функцией fopen().


Начало  Назад  Вперед



Книжный магазин