programmersclub
Нужно реализовать перемещение символа (в данном случае смайлика) стрелками по экрану консоли горизонтально и вертикально.
Прошу привести код в порядок.
 #include
#include
#include
using namespace std;
void main()
{
	HANDLE h = GetStdHandle (STD_OUTPUT_HANDLE);
	COORD c = {0, 0};
	c.X=0;
	c.Y=0;
	SetConsoleCursorPosition (h, c);
	while(1){
	int k = getch(), step = 1; //step - шаг перемещения символа
	if(k==0//k==224)  k = getch();
	switch(k){
	case 72: //72,75,77,80 - порядковый номер стрелок на клавиатуре, char(1) - смайлик
		c.Y-step;
		cout<<char(1);
		break;
	case 75:
		c.X-step;
		cout<<char(1);
		break;
	case 77:
		c.X+step;
		cout<<char(1);
		break;
	case 80:
		c.Y+step;
		cout<<char(1);
	}
}
}
Last
#include
#include
#include
using namespace std;
int main()
{
	HANDLE h = GetStdHandle (STD_OUTPUT_HANDLE);
	COORD c = {10, 1};
	SetConsoleCursorPosition (h, c);
	while(1)
	{
		int k = getch();
		if (k==0//k==224)  k = getch();
		switch(k)
		{
		case 72: //72,75,77,80 - код для клавиш стрелок на клавиатуре, char(1) - смайлик
			c.Y--;
			cout<<char(1);
			break;
		case 75:
			c.X--;
			cout<<char(1);
			break;
		case 77:
			c.X++;
			cout<<char(1);
			break;
		case 80:
			c.Y++;
			cout<<char(1);
			break;
		default: return 0;;
		}
               SetConsoleCursorPosition(h, c);
	}
}
Пост написан при поддержке автосалона "Gammamotors" - одна из ведущих компаний по продаже автомобилей в России. "Gammamotors" является официальным дилером AO "Автоваз".
Ссылки по теме