Основы языка С++. Викентьева О.Л. - 73 стр.

UptoLike

Составители: 

// возникает ли ошибка при открытии файла
{
perror(strcat“error in file :”,filename);//strcat складывает две строки
exit(0);//выход из программы
}
. . . . .
fclose(f);
}
Для текстового файла:
if(f=fopen(filename,”rt”)==0)//открываем для чтения и проверяем возникает ли
ошибка при //открытии файла
if(f=fopen(filename,”r”)==0)//открываем для чтения и проверяем возникает ли ошиб-
ка при //открытии файла
23.3. Стандартные файлы и функции для работы с ними
Когда программа начинает выполняться, автоматически открываются несколько
потоков, из которых основными являются:
- стандартный поток ввода (stdin);
- стандартный поток вывода (stdout);
- стандартный поток вывода об ошибках (stderr).
По умолчанию stdin ставится в соответствие клавиатура, а потокам stdout и stderr -
монитор. Для ввода-вывода с помощью стандартных потоков используются функции:
- getchar()/putchar() – ввод-вывод отдельного символа;
- gets()/puts() – ввод-вывод строки;
- scanf()/printf() – форматированный ввод/вывод.
Функции рассматривались, когда мы рассматривали строковые и символьные дан-
ные. Теперь мы можем связать их со стандартными потоками: ввод осуществляется из
стандартного потока stdin вывод осуществляется в стандартный поток stdout. Аналогично
работе со стандартными потоками выполняется ввод-вывод в потоки, связанные с файла-
ми.
23.4. Символьный ввод-вывод
Для символьного ввода-вывода используются функции:
- int fgetc(FILE*fp), где fp указатель на поток, из которого выполняется считыва-
ние. Функция возвращает очередной символ в форме int из потока fp. Если символ не мо-
жет быть прочитан, то возвращается значение EOF.
- int fputc(int c, FILE*fp), где fp указатель на поток, в который выполняется за-
пись, c – переменная типа int, в которой содержится записываемый в поток символ. Функ-
ция возвращает записанный в поток fp символ в форме int . Если символ не может быть за-
писан, то возвращается значение EOF.
Пример:
#include <iostream.h>
#include <stdio.h>
#include <stdlib.h>
void main()
{
FILE *f;
char c;
char *filename=”f.txt”;
if((f=fopen(filename,”r”)==0)
{
perror(filename);exit(0);
}
while(c=fgetc(f)!=EOF)
      // возникает ли ошибка при открытии файла
      {
      perror(strcat“error in file :”,filename);//strcat складывает две строки
      exit(0);//выход из программы
      }
      .....
      fclose(f);
      }
      Для текстового файла:
      if(f=fopen(filename,”rt”)==0)//открываем для чтения и проверяем возникает ли
      ошибка при //открытии файла
      if(f=fopen(filename,”r”)==0)//открываем для чтения и проверяем возникает ли ошиб-
      ка при //открытии файла


                     23.3. Стандартные файлы и функции для работы с ними
       Когда программа начинает выполняться, автоматически открываются несколько
потоков, из которых основными являются:
       - стандартный поток ввода (stdin);
       - стандартный поток вывода (stdout);
       - стандартный поток вывода об ошибках (stderr).
       По умолчанию stdin ставится в соответствие клавиатура, а потокам stdout и stderr -
монитор. Для ввода-вывода с помощью стандартных потоков используются функции:
        - getchar()/putchar() – ввод-вывод отдельного символа;
       - gets()/puts() – ввод-вывод строки;
       - scanf()/printf() – форматированный ввод/вывод.
       Функции рассматривались, когда мы рассматривали строковые и символьные дан-
ные. Теперь мы можем связать их со стандартными потоками: ввод осуществляется из
стандартного потока stdin вывод осуществляется в стандартный поток stdout. Аналогично
работе со стандартными потоками выполняется ввод-вывод в потоки, связанные с файла-
ми.
                                   23.4. Символьный ввод-вывод
       Для символьного ввода-вывода используются функции:
       - int fgetc(FILE*fp), где fp – указатель на поток, из которого выполняется считыва-
ние. Функция возвращает очередной символ в форме int из потока fp. Если символ не мо-
жет быть прочитан, то возвращается значение EOF.
       - int fputc(int c, FILE*fp), где fp – указатель на поток, в который выполняется за-
пись, c – переменная типа int, в которой содержится записываемый в поток символ. Функ-
ция возвращает записанный в поток fp символ в форме int . Если символ не может быть за-
писан, то возвращается значение EOF.
       Пример:
       #include 
       #include 
       #include 
       void main()
       {
       FILE *f;
       char c;
       char *filename=”f.txt”;
       if((f=fopen(filename,”r”)==0)
       {
       perror(filename);exit(0);
       }
       while(c=fgetc(f)!=EOF)