Ввод-вывод информации при помощи файлов

Ввод-вывод информации при помощи файлов


Раньше для ввода и вывода информации мы использовали клавиатуру. Программа a + b при этом выглядела следующим образом:
#include <iostream>
#include <conio.h>

using namespace std;

int a, b, c;

int main() {
  cin >> a >> b;
  c = a + b;
  cout << c;
  getch();
  return 0;
}


С использованием файлов она будет выглядеть следующим образом:
#include <iostream>

using namespace std;

int a, b, c;

int main() {
  freopen("a+b.in", "r", stdin);
  freopen("a+b.out", "w", stdout);
  cin >> a >> b;
  c = a + b;
  cout << c;
  return 0;
}


Что же поменялось?
Во-первых мы убрали функцию getch(), которая была нужна для задержки экрана.
Во-вторых библиотеку conio.h, которая была нужна для вызова getch().

Зато мы добавили в код две строки:
freopen("a+b.in", "r", stdin);
freopen("a+b.out", "w", stdout);

В строке
 freopen("a+b.in", "r", stdin); 

мы подключаем файл ввода. Из него мы будем брать значения наших переменных.
В freopen передаются три значения.
Первое это имя файла откуда мы будем брать информацию.
"r" и stdin указывают на то, что это файл ввода.

В строке
 freopen("a+b.out", "w", stdout); 

мы подключаем файл вывода. В него мы будем записывать полученный результат.
Если файл вывода отсутствует, то компьютер сам его создаст.
Здесь первое значение это имя файла куда мы будем записывать информацию.
"w" и stdout указывают на то, что это файл вывода.

Файлы "a+b.in" и "a+b.out" будут находиться в той же директории, что и исходник программы.

Вот пример файла ввода "a+b.in" для программы a + b:
1 2


Тогда мы получим файл вывода "a+b.out":
3
Понравилась новость? Добавь в закладки!
Хочешь получать свежие новости? Подпишись на обновления с сайта!
Рекомендуем посмотреть:

Добавление комментария

Ваше Имя:
Ваш E-Mail:
Полужирный Наклонный текст Подчеркнутый текст Зачеркнутый текст | Выравнивание по левому краю По центру Выравнивание по правому краю | Вставка смайликов Выбор цвета | Скрытый текст Вставка цитаты Вставка исходного кода Преобразовать выбранный текст из транслитерации в кириллицу Вставка спойлера

Введите два слова, показанных на изображении: