Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Порядок выполнения операторов, При работе с потоками 
:(
    Опции темы
Nastya
Дата 2.11.2002, 17:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1287
Регистрация: 27.3.2002
Где: Мариуполь

Репутация: 5
Всего: 44



Вот такая проблема:
последовательность операторов
cout<<"Text";

Выполняется, так, будто бы записана в таком порядке
getch();
cout<<"Text";

При этом если выводить не через cout, а через printf, то все в порядке.
Я подразумева, что это как-то связанно с потоками. Но все-таки в чем проблема.


--------------------
Что бы понять рекурсию, надо понять рекурсию

"Профессионал - это человек сделавший все возможные ошибки в очень узкой области". Н.Бор
PM MAIL   Вверх
Baa
Дата 2.11.2002, 22:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2639
Регистрация: 12.4.2002
Где: Москва

Репутация: 8
Всего: 12



Т.е. перед выводом текста происходит ожидание ввода?
Так получается даже с такой программой?
main ()
{
 cout<<"Text";
}

з.ы.
у меня в проге выше нормально cout выводит.


--------------------
"Duty is everything; the greatest of joys, the deepest of sorrows" Aribeth de Tylmarande
PM ICQ   Вверх
Nastya
Дата 3.11.2002, 17:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1287
Регистрация: 27.3.2002
Где: Мариуполь

Репутация: 5
Всего: 44



Цитата
Так получается даже с такой программой?
main ()
{
cout<<"Text";
}


Или я чего-то не догоняю, но вот такая программа выводит текст без ожидания ввода. Может дело в компиляторе. У меня VC++ 6.0 создаю консоль апликейшин.


--------------------
Что бы понять рекурсию, надо понять рекурсию

"Профессионал - это человек сделавший все возможные ошибки в очень узкой области". Н.Бор
PM MAIL   Вверх
Lobsang
Дата 3.11.2002, 18:07 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Нет, ну main() ведь у тебя все-равно должна быть...
  Вверх
suborg
Дата 3.11.2002, 21:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 190
Регистрация: 29.4.2002
Где: Москва

Репутация: нет
Всего: нет



Скорее всего дело в том, что используется буферизированный вывод, который сбрасывает буферы в консоль не по мере поступления данных, а по своему усмотрению. Обойти это можно через ручной сброс буфера (метод flush) или через отключения буфферизации (тоже по-моему можно там намудрить с stdout чтобы он сразу скидывал). Если откомпилишь под ДОС в борланде, то скорее всего такого глюка не будет. В линуксе скорее всего будет как в винде... в общем особенность потока. cout.flush() должен помочь.
PM MAIL WWW ICQ   Вверх
Baa
Дата 5.11.2002, 07:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2639
Регистрация: 12.4.2002
Где: Москва

Репутация: 8
Всего: 12



А такое происходит и в Debug, и в Release?


--------------------
"Duty is everything; the greatest of joys, the deepest of sorrows" Aribeth de Tylmarande
PM ICQ   Вверх
Nastya
Дата 5.11.2002, 20:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1287
Регистрация: 27.3.2002
Где: Мариуполь

Репутация: 5
Всего: 44



Цитата
А такое происходит и в Debug, и в Release?

Да!
То, что в борланде все в порядке, это ясно.


--------------------
Что бы понять рекурсию, надо понять рекурсию

"Профессионал - это человек сделавший все возможные ошибки в очень узкой области". Н.Бор
PM MAIL   Вверх
Люда
Дата 5.11.2002, 22:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 71
Регистрация: 24.4.2002

Репутация: нет
Всего: нет



У меня стоит VC++ 6.0, косольное приложение, cout работает нормально, никакого ожидания ввода текста не происходит!Так, что дело не в версии компилятора.
PM MAIL ICQ   Вверх
Fantasist
Дата 6.11.2002, 04:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Лентяй
***


Профиль
Группа: Участник Клуба
Сообщений: 1517
Регистрация: 24.3.2002

Репутация: 4
Всего: 41



Ну а то, что сказал suborg, пробовали? Еще надо и для ввода посмотреть, может там где что-то ожидает пока в него введется.


--------------------
Волны гасят ветер...
PM MAIL   Вверх
Keeper_Andrew
Дата 6.11.2002, 07:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 21.10.2002

Репутация: нет
Всего: нет



Nastya

Напишите пожалуйста кусок кода, чтобы повторить описанную тобой ситуацию.
PM MAIL   Вверх
Baa
Дата 8.11.2002, 11:06 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Цитата(Nastya @ 05.11.2002, 12:10)
Да!
То, что в борланде все в порядке, это ясно.

Причем тут борланд?
Я имел ввиду конфигурацию проекта... В msvc можно делать билд дебагный и релизный... дык вот при дебагном есть такое, что в конце добавляется getch ()
з.ы. не совсем он добавляется, но смысл примерно тот же...
  Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0605 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.