Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Хулиган
85 / 80 / 12
Регистрация: 08.08.2012
Сообщений: 737
#1

Связывание потоков ввода-вывода - C++

30.07.2013, 18:48. Просмотров 778. Ответов 10
Метки нет (Все метки)

C++
1
2
3
4
cin.tie(&cout);
 
cout<<"Enter x: ";
cin>>x;
для чего применяется связывание? а то чтот не доходит
и чем несвязанные потоки отличаются от связанных?
C++
1
2
cout<<"Enter x: ";
cin>>x;
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.07.2013, 18:48     Связывание потоков ввода-вывода
Посмотрите здесь:

C++ Манипулятор ввода / вывода
Перевод стандартных потоков ввода/вывода в файлы C++
C++, переопределение ввода-вывода C++
Операции ввода-вывода C++
Множественное наследование с использованием абстрактных базовых классов, файлового ввода-вывода с применением потоков С++, функций обработки исключи C++
Операторы ввода вывода C++
Перехват потоков ввода/вывода C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт CЭксперт С++
12892 / 7278 / 811
Регистрация: 27.09.2012
Сообщений: 17,977
Записей в блоге: 2
Завершенные тесты: 1
30.07.2013, 18:51     Связывание потоков ввода-вывода #2
Где гарантия, что когда будет запрос cin, сообщение "Enter x: " будет выведено на экран?
Связывание приводит к сбросу потока
Хулиган
85 / 80 / 12
Регистрация: 08.08.2012
Сообщений: 737
30.07.2013, 19:17  [ТС]     Связывание потоков ввода-вывода #3
Цитата Сообщение от Croessmah Посмотреть сообщение
Где гарантия, что когда будет запрос cin, сообщение "Enter x: " будет выведено на экран?
а что может помешать?

Добавлено через 20 минут
как я понял связывание используется для совместного использования буфера разными потоками? так? или это уже не в ту степь понесло?
Bend3r
149 / 136 / 18
Регистрация: 29.07.2012
Сообщений: 709
30.07.2013, 19:39     Связывание потоков ввода-вывода #4
Возможно поможет.
Croessmah
Модератор
Эксперт CЭксперт С++
12892 / 7278 / 811
Регистрация: 27.09.2012
Сообщений: 17,977
Записей в блоге: 2
Завершенные тесты: 1
30.07.2013, 19:50     Связывание потоков ввода-вывода #5
Хулиган, Помешать может буферизация.
_stanislav
7 / 56 / 20
Регистрация: 16.08.2014
Сообщений: 390
Завершенные тесты: 2
23.09.2016, 15:58     Связывание потоков ввода-вывода #6
Croessmah, а как можно проверить на практике, я попробовал с связыванием и без связывание, результат один.

C++
1
2
3
cin.tie(0);
cout << "Password: "; 
cin >> s;
obivan
Падаван С++
396 / 216 / 56
Регистрация: 11.11.2014
Сообщений: 755
Завершенные тесты: 2
23.09.2016, 16:19     Связывание потоков ввода-вывода #7
_stanislav, это потоки, и с ними проблемы могут возникнуть 1 в 10000000 раз запусков, их отлаживать трудно, просто со связывание вы даете себе гарантию
tranki
0 / 0 / 0
Регистрация: 20.11.2016
Сообщений: 10
24.11.2016, 16:44     Связывание потоков ввода-вывода #8
Здравствуйте!
Хулиган, как с вами можно связаться?
Я хочу спросить у вас о буферизации потоков.
Croessmah
Модератор
Эксперт CЭксперт С++
12892 / 7278 / 811
Регистрация: 27.09.2012
Сообщений: 17,977
Записей в блоге: 2
Завершенные тесты: 1
24.11.2016, 16:52     Связывание потоков ввода-вывода #9
Цитата Сообщение от tranki Посмотреть сообщение
Хулиган, как с вами можно связаться?
Обсуждение вопросов - только в теме на форуме. Приглашения к обсуждению еще где-либо (в том числе и с помощью системы личных сообщений) запрещены, за исключением коммерческих разделов.
tranki
0 / 0 / 0
Регистрация: 20.11.2016
Сообщений: 10
25.11.2016, 14:08     Связывание потоков ввода-вывода #10
Цитата Сообщение от Croessmah Посмотреть сообщение
Приглашения к обсуждению еще где-либо (в том числе и с помощью системы личных сообщений) запрещены, за исключением коммерческих разделов
Как тут у вас печально всё...
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.11.2016, 14:38     Связывание потоков ввода-вывода
Еще ссылки по теме:

C++ Система ввода/вывода
C++ Итераторы: зачем используется оператор инкремента для потоков вывода?
C++ Поток ввода-вывода
C++ Функция ввода / вывода
Синхронизация потоков ввода и вывода в Eclipce CDT C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
notAll
382 / 103 / 21
Регистрация: 27.05.2016
Сообщений: 261
Завершенные тесты: 2
25.11.2016, 14:38     Связывание потоков ввода-вывода #11
Цитата Сообщение от _stanislav Посмотреть сообщение
а как можно проверить на практике, я попробовал с связыванием и без связывание, результат один
Без связывания, скорее всего выведет "0":
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <fstream>
#include <string>
 
int main()
{
    std::ofstream os("test.txt");
    std::ifstream is("test.txt");
    std::string value("0");
 
    //is.tie(&os);
    os << "Hello";
    is >> value;
 
    std::cout << "Result: " << value << "\n";
}
http://melpon.org/wandbox/permlink/iMLhpwsHvh2lqmk4
Yandex
Объявления
25.11.2016, 14:38     Связывание потоков ввода-вывода
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru