ИТ
Иван Тучин

Switch() останавливает while() в C++

Кусок программы :
while(g == 1)
{
if (!_kbhit())
{
SetConsoleCursorPosition(hOut,c);
printf(" ");
c.X += 1;
c.Y += 1;
SetConsoleCursorPosition(hOut,c);
cout << char(1);
Sleep(70);
}
switch(_getch())
{
case char(80):
x = 0;
y = 1;
break;
case char(77):
x = 1;
y = 0;
break;
case char(72):
x = 0;
y = -1;
break;
case char(75):
x = -1;
y = 0;
break;
}
}

while дальше не будет выполнятся пока не выберет switch в данном случае пока не нажмешь кнопку, как решить?

с. Y += y;
c.X += x;

Спасибо заработало!

ДШ
Дмитрий Шалгачёв

Элементарно, использовать _getch только когда сработало _kbhit
То есть вместо
Sleep(70);
}
switch(_getch())

написать

Sleep(70);
}
else
switch(_getch())

Похожие вопросы
Напишите программу на С++ через switch. Спасибо
Помогите с программой по c++ циклом do while.
C++, не останавливается цикл, критует при проверки
Переключатель switch в c++
какое значение будет при выполнении последовательности операторов C:=1; P:=0;while C>P do P:=P+C; C:=C+1writeln (P*C)
Помогите решить, в C++,при помощи условия while.
Помогите решить, в C++,при помощи оператора while.
Задача С++(do While)
Как записать оператором switch(c++)!? x>2 and x<2!?
Оператор Switch ( Borland C++ ) Помогите пожалуйста