powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Запись данных на cin
4 сообщений из 4, страница 1 из 1
Запись данных на cin
    #38619549
Gijad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Столкнулся с такой проблемой:
есть две программы source и algo, обе написаны на vc++, source запускает algo
Код: plaintext
1.
2.
vector<FILE *> fh;
fh.push_back(_popen(command.c_str(), "w"));


такой способ запуска выбран потому, что algo может быть запущен несколько раз одновременно.
В каждом экземпляре algo через
Код: plaintext
1.
cin.read(buffer,7);


читаются данные, сначала все нормально, но через некоторое время неск. сек. поток данных разрушается. Подскажите куда копать, чтобы исправить это?
p.s. есть вариант algo_perl написанный на perl, они идентичны с algo, когда source запускает algo_perl все нормально, данные не разрушаются.
...
Рейтинг: 0 / 0
Запись данных на cin
    #38619610
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gijad,

Т.к. это винда, то имеет значение, бинарные ли данные или текстовые.
Если бинарные - то "w" заменить на "wb" а на другом конце переоткрыть cin с флагом бинарных данных (cin - текстовый).
Как переоткрыть cin - не знаю.
Возможно проще будет вообще не использовать его, а читать прямо из STDIN_FILENO функцией ::read(), тем более что cin.read практически ничем не отличается от нее.

Если захотите таки через cin то тут примерно указано направление http://compgroups.net/comp.unix.programmer/how-can-i-reopen-std-cin-and-std-cout-in/327672
...
Рейтинг: 0 / 0
Запись данных на cin
    #38620028
Gijad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly Moskovsky, спасибо, надо будет проверить.
...
Рейтинг: 0 / 0
Запись данных на cin
    #38620036
Strangecat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот тут говорят
http://stackoverflow.com/questions/5257509/freopen-equivalent-for-c-streams

что cin привзян к stdin настолько, что freopen на stdin спасает отцов демократий.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Запись данных на cin
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]