Программирование на C и C++

Онлайн справочник программиста на C и C++

Использование fopen(), getc(), putc() и fclose()

Функции fopen(), getc(), putc() и fclose() составляют минимальный набор файловых операций. Ниже приведен простой пример использования putc(), fopen() и fclose() в программе ktod. Она просто читает символы с клавиатуры и записывает их в файл, пока не встретится точка. Имя файла указывается в командной строке. Например, если назвать программу ktod, а затем набрать ktod test, то можно будет ввести строчки текста в файл test.

/* ktod: ключ к диску */
#include <stdio.h>
int main(int argc, char *argv[])
{
FILE *fp;
char ch;
if (argc!=2) {
printf("You forgot to enter the filename.");
return 1;
}
if((fp=fopen(argv[l], "w")) == NULL) {
printf("Cannot open file.");
return 1;
}
do {
ch = getchar(); putc(ch, fp) ;
} while (ch!='.');
fclose(fp);
return 0;
}

Программа dtos читает любой текстовый файл и выводит его содержимое на экран. В команд­ной строке следует указать имя файла.

/* dtos: диск на экран */
#include <stdio.h>
int main(int argc, char *argv[])
{
FILE * fp;
char ch;
if (argc!=2) {
printf("You forgot to enter the filename.");
return 1;
}
if((fp=fopen(argv[1], "r")) == NULL) {
printf("Cannot open file.");
return 1;
}
ch = getc(fp); /* чтение одного символа */
while (ch!=EOF) {
putchar(ch); /* вывод на экран */
ch = getc(fp);
}
fclose(fp);
return 0;
}