Заголовочный файл
| Название | Язык |
|---|---|
| stdio.h | С |
| cstdio | С++ |
Этот тип данных определяет поток и содержит информацию, необходимую для управления потоком, в том числе указатель на буфер потока, и его показатели состояния.
Файловые объекты обычно создаются с помощью вызова функций fopen или tmpfile, которые возвращают ссылку на объект связанный с файлом.
Содержимое объекта FILE предназначено для использования только функций определённых в заголовочном файле <cstdio>. В самом деле, основной целью объекта типа FILE является идентификации и потока, который связан с физическим файлом. Во всех потоковых функциях, в качестве аргумента передается объект типа FILE, таким образом мы можем передавать потоки в функции, и выполнять различные манипуляции с ними.
Объект типа FILE в памяти размещается автоматически, эта задача лежит на функциях fopen или tmpfile. Задача высвобождения памяти выполняется функцией fclose.
При подключении заголовочного файла <cstdio> в проект, автоматически создаются три объекта типа FILE*, потоки ввода/вывода и стандартный поток ошибок. К этим потокам можно обратиться через указатели stdin, stdout и stderr.
Пример: исходный код программы
//пример использования FILE
#include <cstdio>
int main()
{
char buffer[100];
FILE * ptrFile = fopen("file.txt" , "r");
if (ptrFile == NULL) perror ("Ошибка открытия файла");
else
{
while ( !feof(ptrFile) ) // пока не конец файла
{
if ( fgets(buffer , 100 , ptrFile) != NULL ) // считать символы из файла
fputs(buffer, stdout); // вывод на экран
}
fclose (ptrFile); // закрыть файл
}
return 0;
}
Эта программа считывает данные из текстового файла file.txt и отправляет считанные данные в стандартный поток вывода.
«Нет будущего, пока мы не разберемся в нашем прошлом.»
Что-то в этой цитате есть, что заставляет задуматься, не помню, кто это сказал, но в этом предложении заложен глубокий смысл.
Комментарии