ВУЗ:
Составители:
Рубрика:
putchar(c);//вывод с на стандартное устройство вывода
fclose(f);
}
23.5. Строковый ввод-вывод
Для построчного ввода-вывода используются следующие функции:
1) char* fgets(char* s,int n,FILE* f), где
char*s – адрес, по которому размещаются считанные байты,
int n – количество считанных байтов,
FILE* f – указатель на файл, из которого производится считывание.
Прием байтов заканчивается после передачи n-1 байтов или при получении управ-
ляющего символа ‘\n’. Управляющий символ тоже передается в принимающую строку.
Строка в любом случае заканчивается ‘\0’. При успешном завершении считывания функ-
ция возвращает указатель на прочитанную строку, при неуспешном – 0.
2) int puts(char* s, FILE* f), где
char*s – адрес, из которого берутся записываемые в файл байты,
FILE* f – указатель на файл, в который производится запись.
Символ конца строки (‘\0’) в файл не записывается. Функция возвращает EOF, если
при записи в файл произошла ошибка, при успешной записи возвращает неотрицательное
число.
Пример:
//копирование файла in в файл out
int MAXLINE=255;//максимальная длина строки
FILE *in,//исходный файл
*out;//принимающий файл
char* buf[MAXLINE];//строка, с помощью которой выполняется копирование
in=fopen(“f1.txt”,”r”);//открыть исходный файл для чтения
out=fopen(“f2.txt”,”w”);//открыть принимающий файл для записи
while(fgets(buf,MAXLINE,in)!=0)//прочитать байты из файла in в строку buf
fputs(buf,out);//записать байты из строки buf в файл out
fclose(in);fclose(out);//закрыть оба файла
23.6. Блоковый ввод-вывод
Для блокового ввода-вывода используются функции:
1) int fread(void*ptr,int size, int n, FILE*f), где
void*ptr – указатель на область памяти, в которой размещаются считанные из файла
данные,
int size – размер одного считываемого элемента,
int n – количество считываемых элементов,
FILE*f – указатель на файл, из которого производится считывание.
В случае успешного считывания функция возвращает количество считанных эле-
ментов, иначе – EOF.
2) int fwrite(void*ptr,int size, int n, FILE*f), где
void*ptr – указатель на область памяти, в которой размещаются считанные из файла
данные,
int size – размер одного записываемого элемента,
int n – количество записываемых элементов,
FILE*f – указатель на файл, в который производится запись.
В случае успешной записи функция возвращает количество записанных элементов,
иначе – EOF.
Пример:
struct Employee
{
char name[30];
char title[30];
putchar(c);//вывод с на стандартное устройство вывода
fclose(f);
}
23.5. Строковый ввод-вывод
Для построчного ввода-вывода используются следующие функции:
1) char* fgets(char* s,int n,FILE* f), где
char*s – адрес, по которому размещаются считанные байты,
int n – количество считанных байтов,
FILE* f – указатель на файл, из которого производится считывание.
Прием байтов заканчивается после передачи n-1 байтов или при получении управ-
ляющего символа ‘\n’. Управляющий символ тоже передается в принимающую строку.
Строка в любом случае заканчивается ‘\0’. При успешном завершении считывания функ-
ция возвращает указатель на прочитанную строку, при неуспешном – 0.
2) int puts(char* s, FILE* f), где
char*s – адрес, из которого берутся записываемые в файл байты,
FILE* f – указатель на файл, в который производится запись.
Символ конца строки (‘\0’) в файл не записывается. Функция возвращает EOF, если
при записи в файл произошла ошибка, при успешной записи возвращает неотрицательное
число.
Пример:
//копирование файла in в файл out
int MAXLINE=255;//максимальная длина строки
FILE *in,//исходный файл
*out;//принимающий файл
char* buf[MAXLINE];//строка, с помощью которой выполняется копирование
in=fopen(“f1.txt”,”r”);//открыть исходный файл для чтения
out=fopen(“f2.txt”,”w”);//открыть принимающий файл для записи
while(fgets(buf,MAXLINE,in)!=0)//прочитать байты из файла in в строку buf
fputs(buf,out);//записать байты из строки buf в файл out
fclose(in);fclose(out);//закрыть оба файла
23.6. Блоковый ввод-вывод
Для блокового ввода-вывода используются функции:
1) int fread(void*ptr,int size, int n, FILE*f), где
void*ptr – указатель на область памяти, в которой размещаются считанные из файла
данные,
int size – размер одного считываемого элемента,
int n – количество считываемых элементов,
FILE*f – указатель на файл, из которого производится считывание.
В случае успешного считывания функция возвращает количество считанных эле-
ментов, иначе – EOF.
2) int fwrite(void*ptr,int size, int n, FILE*f), где
void*ptr – указатель на область памяти, в которой размещаются считанные из файла
данные,
int size – размер одного записываемого элемента,
int n – количество записываемых элементов,
FILE*f – указатель на файл, в который производится запись.
В случае успешной записи функция возвращает количество записанных элементов,
иначе – EOF.
Пример:
struct Employee
{
char name[30];
char title[30];
Страницы
- « первая
- ‹ предыдущая
- …
- 72
- 73
- 74
- 75
- 76
- …
- следующая ›
- последняя »
