getch()
void main()
{cout<<"aaa";
getch();
cout<<"bbb"}
в борланде код работает нормально сначала выводится ааа потом прога ждет когда пользователь нажмет клавишу потом выводится bbb
Но в вижаке прога сначала ждет пока пользоатель нажмет клавишу потом выводит aaa и bbb сразу. Че за фигня???
вот код для консального приложения
void main()
{cout<<"aaa";
getch();
cout<<"bbb"}
в борланде код работает нормально сначала выводится ааа потом прога ждет когда пользователь нажмет клавишу потом выводится bbb
Но в вижаке прога сначала ждет пока пользоатель нажмет клавишу потом выводит aaa и bbb сразу. Че за фигня???
хм... все работает у меня
Все работает нормально.
А на каком компилляторе. У меня Visual C++ 6.0
А на каком компилляторе. У меня Visual C++ 6.0
7.1
И на 6.0, и на 7.1 работает, посмотри настройки проекта.
Я никаких настроек не меняю. Просто создаю консольное приложение. В появившемся окне пишу код. Может просто версия вижака глючная.
#include <conio.h>
using namespace std;
void main()
{
cout<<"aaa";
getch();
cout<<"bbb";
}
вот код для консального приложения
void main()
{cout<<"aaa";
getch();
cout<<"bbb"}
в борланде код работает нормально сначала выводится ааа потом прога ждет когда пользователь нажмет клавишу потом выводится bbb
Но в вижаке прога сначала ждет пока пользоатель нажмет клавишу потом выводит aaa и bbb сразу. Че за фигня???
вставляй cout.flush() или cout<<"aaa"<<endl. Твой выведенный текст находится в буфере.
endl также вызывает сброс содержимого буфера на экран.
вставляй cout.flush() или cout<<"aaa"<<endl. Твой выведенный текст находится в буфере.
endl также вызывает сброс содержимого буфера на экран.
Да это работает. Спасибо что объяснили что к чему.
Но вот любопытно что не все копилляторы не сбрасывают содержимое буфера. В этой теме некоторые люди писали что у них этот код нормально работает и без вызова flush.
Да это работает. Спасибо что объяснили что к чему.
Но вот любопытно что не все копилляторы не сбрасывают содержимое буфера. В этой теме некоторые люди писали что у них этот код нормально работает и без вызова flush.
А это все зависит от реализации классов в разных компиляторах. Некоторые вообще сразу на экран выводят, минуя буфер (хотя, по идеологии потоков, должно вначале в буфер выводиться). Сам сталкивался с такой проблемой, правда сразу догадался что к чему.
p.s. "компилятор"