Форум программистов, компьютерный форум CyberForum.ru

Определение нажатой клавиши,консольное приложение. - C++

Восстановить пароль Регистрация
 
MaxxximyM
18 / 2 / 1
Регистрация: 31.08.2011
Сообщений: 132
10.02.2012, 17:31     Определение нажатой клавиши,консольное приложение. #1
Здравствуйте,есть программка которая при нажатии на одну из стрелок клавиатуры должна написать какая стрелка нажата:


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include "stdafx.h"
#include <conio.h>
#include <iostream>
using namespace std;
void main()
{
int ch;
        for(;;){
            ch=getch();
            switch(ch)
            {
            case 72: cout<<"UP\n";
            case 77: cout<<"RIGHT\n";
            case 75: cout<<"LEFT\n";
            case 80: cout<<"DOWN\n";
        }
              }
}
Она компилируется и запускается........но так сказать результат меня удивляет)
Когда жму вниз программа правильно определяет и пишет DOWN.
Когда жму вверх, влево, вправо она пишет UPRIGHTDOWN или RIGHTDOWN......как-будто я одновременно все кнопки нажал)))
Почему так?
(Если непонятно объяснил откомпилируйте, запустите и всё увидите).
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.02.2012, 17:31     Определение нажатой клавиши,консольное приложение.
Посмотрите здесь:

Считывание нажатой клавиши C++
C++ функция выдает код нажатой клавиши
Определить код нажатой клавиши C++
C++ прога, которая по нажатой клавише выводит ascii - код символа это клавиши или scan - код самой клавиши.
Возврат значения нажатой клавиши C++
C++ Как получить имя нажатой клавиши
Прерывание бесконечного цикла с возвратом значения нажатой клавиши в main() C++
SFML определение нажатой клавиши C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
I.M.
 Аватар для I.M.
564 / 547 / 5
Регистрация: 16.12.2011
Сообщений: 1,389
10.02.2012, 17:36     Определение нажатой клавиши,консольное приложение. #2
break забыли расставить
C++
1
2
3
4
case 72: cout<<"UP\n";break;
case 77: cout<<"RIGHT\n";break;
case 75: cout<<"LEFT\n";break;
case 80: cout<<"DOWN\n";
MaxxximyM
18 / 2 / 1
Регистрация: 31.08.2011
Сообщений: 132
10.02.2012, 19:30  [ТС]     Определение нажатой клавиши,консольное приложение. #3
Спасибо)
Тупанул я)
Yandex
Объявления
10.02.2012, 19:30     Определение нажатой клавиши,консольное приложение.
Ответ Создать тему
Опции темы

Текущее время: 13:28. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru