пользователей: 30398
предметов: 12406
вопросов: 234839
Конспект-online
РЕГИСТРАЦИЯ ЭКСКУРСИЯ

4 курс 2 семестр:
» Компьютерная графика и дизайн
» Анимация в Macromedia Flash
» Защита информации в компьютерных сетях
» Web-программирование
4 курс 1 семестр:
» Инструментальные средства разработки ПО
» Технология разработки ПО
» Документирование и сертификация
3 курс 2 семестр:
» Базы данных
» Инфокоммуникационные системы и сети
» Прикладное программирование
» Системное программирование
2 курс 2 семестр:
» Охрана труда
» Пакеты прикладных программ
» Основы программирования

17. Ввод-вывод данных в С/c++. Стандартный ввод-вывод. Форматный ввод-вывод. Потоковый ввод-вывод.

Ввод-вывод данных в языке C++ осуществляется либо с помощью функций ввода-вывода в стили C, либо с использованием библиотеки классов C++. Преимущество объектов C++ в том, что они легче в использовании, поэтому предлагаю рассмотреть именно их. Описание объектов для управления вводом-выводом содержится в файле iostream.h. При подключении этого файла с помощью директивы #include <iostream.h> в программе автоматически создаются виртуальные каналы связи cin для ввода с клавиатуры и cout для вывода на экран, а также операции помещения в поток << и чтения из потока >>.С помощью объекта cin и операции >> можно присвоить значение любой переменной. Например, если переменная x описана как целочисленная, то команда cin>>x; означает, что в переменную xбудет записано некое целое число, введенное с клавиатуры. Если необходимо ввести несколько переменных, то следует написать cin>>x>>y>>z;.Объект cout и операция << позволяет вывести на экран значение любой переменной или текст. Текст необходимо заключать в двойные кавычки. Запись cout<<x; означает вывод на экран значения переменной x.Стандартный ввод/вывод является частным случаем файлового ввода/вывода. При файловом вводе/выводе мы объявляли экземпляры соответствующих поточных классов, а затем пользовались методами и операциями: << ,>>. Но как мы видели в начале этой главы, классы istream ,ostream, лежащие в основе поточных классов, содержат стандартныеобъекты-экземпляры классов с именами cout (экземпляр класса для стандартного ввода),cin (экземпляр класса для стандартного вывода) исerr (экземпляр класса для стандартного вывода сообщений об ошибках).При запуске любой программы на языке С++ эти стандартные потоки определены (открыты) и по умолчанию назначены на стандартное вводное устройство — клавиатуру (cin), на стандартное выводное устройство — экран (cout иcerr). Причем все эти устройства синхронно связаны с соответствующими указателями stdin,stdout,stderr. Так что работа со стандартным вводом/выводом сводится к тому, что вместо задаваемых пользователем имен экземпляров соответствующих классов задаются имена стандартных экземпляров классов:cin,cout. Открывать ничего не надо, нужно только использовать операции<<,>> и операции форматирования. Если мы пишем имена переменных, из которых выводятся или в которые вводятся данные, то по умолчанию для ввода/вывода используются определенные форматы. Например, запишем:

cout << i;

В этом случае значение i выведется на экран в формате, определенном по умолчанию для типаi и в минимальном поле.

Запишем:

cin >> i >> j >> s;

где i,j,s описаны, соответственно, какint,float,char. В записи не видно форматов, но при вводе значений этих переменных с клавиатуры (после ввода каждого значения надо нажимать клавишу <Enter>) их форматы будут учтены.

Форматный ввод-вывод позволяет передавать программе и выдавать из программы на внешнее устройство символьные, строковые и числовые значения, обеспечивая преобразование данных в процессе ввода-вывода. Для форматного вывода используется функция printf(), обращение к которой, в общем виде можно записать следующим образом:

printf(<строка_вывода>,<список_вывода>);

 

 

где

  • <строка_вывода> – это строка, в состав которой входят обычные символы и группы специальных символов, называемых форматами (или спецификациями преобразований);
  • <список_вывода> – это перечисление элементов вывода, отделенных друг от друга запятой: <элемент1>,<элемент2>,...,<элементN>. В качестве <элемент> могут быть использованы константы, переменные и выражения.

Строка вывода и список вывода, в свою очередь, должны быть отделены друг от друга запятой, как это видно из общей формы записи функции printf(). Функция printf() печатает строку вывода и значения элементов списка вывода. Если в качестве элемента записана константа, то печатается константа; если переменная, то печатается значение переменной; если выражение, то печатается значение выражения. Чтобы разобраться, как работает функция printf() и какова роль форматов в строке вывода, рассмотрим фрагмент программы:

int x,y;

x=8;y=5;

printf("Если к %d прибавить %d, то получим %d.",x,y,x+y);

 


06.05.2018; 21:33
хиты: 1202
рейтинг:0
Точные науки
информатика
Языки программирования
для добавления комментариев необходимо авторизироваться.
  Copyright © 2013-2024. All Rights Reserved. помощь