Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.51/61: Рейтинг темы: голосов - 61, средняя оценка - 4.51
1183 / 468 / 87
Регистрация: 23.06.2009
Сообщений: 6,390
1

Операция при нажатии клавиши

25.07.2009, 19:58. Показов 12730. Ответов 11
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
подскажите как при помощьи клавиши сделать какую то задачу...например при Y сделать что то а при N например закрыть окно...это надо вроде через чар сделать но как, не знаю многопопробовал, не получается...
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.07.2009, 19:58
Ответы с готовыми решениями:

Вывод информации при нажатии клавиши
Разработка программы для вывода информации(о клавиши ) при нажатии клавиши на клавиатуре..))) ...

Перехват кода клавиши при нажатии
Напомните пожалуйста как получить цифровой код клавиши по ее нажатию. там воде что-то с функцией...

Остановка программы при нажатии клавиши BS
Напишите программу, выполняющую вывод на экран произвольных наборов символов до тех пор, пока не...

Вызов функции при нажатии клавиши
Доброго всем дня! Мучает меня вопрос, как сделать так, чтобы функция function3 вызывалась в любой...

11
2816 / 1407 / 107
Регистрация: 07.03.2009
Сообщений: 4,446
25.07.2009, 20:03 2
C++
1
2
3
4
5
6
7
8
9
char c;
c = cin.get();
switch(c)
{
case 'Y': FirstAction(); break;
case 'N': SecondAction(); break;
/* не первый и не второй вариант */
default: ThirdAction(); break;
}
Если делать без подтверждающей клавиши enter, необхожимо подключить DOS библиотеку conio.h и вместо
C++
1
c = cin.get();
написать
C++
1
c = getch();
1
1183 / 468 / 87
Регистрация: 23.06.2009
Сообщений: 6,390
25.07.2009, 20:13  [ТС] 3
Цитата Сообщение от Monte-Cristo Посмотреть сообщение
default: ThirdAction(); break;
аэ то для чего??

Добавлено через 2 минуты 36 секунд
3 ошибки:
Warning 1 warning C4996: 'getch': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _getch. See online help for details. d:\Projects\helps\helps\helps.cpp 11 helps


Error 2 error C3861: 'FirstAction': identifier not found d:\Projects\helps\helps\helps.cpp 14 helps


Error 3 error C3861: 'SecondAction': identifier not found d:\Projects\helps\helps\helps.cpp 15 helps
0
2816 / 1407 / 107
Регистрация: 07.03.2009
Сообщений: 4,446
25.07.2009, 20:18 4
Цитата Сообщение от @lex Посмотреть сообщение
3 ошиб


Цитата Сообщение от @lex Посмотреть сообщение
getch
это предупреждение, что getch - posix не совместима.. т.е. на линухе не прокатит...

Цитата Сообщение от @lex Посмотреть сообщение
'FirstAction'
это выдуманная мной функция)) типа первое действие) ты ж сам спрашивал...

Цитата Сообщение от @lex Посмотреть сообщение
'SecondAction'
аналогично


Цитата Сообщение от @lex Посмотреть сообщение
аэ то для чего??
default выполняется тогда, когда не выполнилось ни одно из условий
0
Эксперт С++
7175 / 3234 / 81
Регистрация: 17.06.2009
Сообщений: 14,164
25.07.2009, 20:22 5
Warning 1 warning C4996: 'getch': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _getch. See online help for details. d:\Projects\helps\helps\helps.cpp 11 helps
Английский знаешь ?
Тут написано, что рекомендуется использовать _getch() вместо getch().

FirstAction(), SecondAction(), ThirdAction() - это твои функции, которые ты сам должен написать.

Добавлено через 1 минуту 36 секунд
это предупреждение, что getch - posix не совместима.. т.е. на линухе не прокатит...
Вообще-то там написано не это.
1
1183 / 468 / 87
Регистрация: 23.06.2009
Сообщений: 6,390
25.07.2009, 20:23  [ТС] 6
Monte-Cristo, 2 из этих понял))))))))а на счет этих actionov не совсем...
то есть так....если У значит первый акшон...если так то что такое breack?

Добавлено через 53 секунды
odip, а объязательно функции?
0
2816 / 1407 / 107
Регистрация: 07.03.2009
Сообщений: 4,446
25.07.2009, 20:29 7
Цитата Сообщение от odip Посмотреть сообщение
Вообще-то там написано не это.
да ну? я просто до конца не перводил... а применять getch() или _getch() я большей разницы не вижу.. в серьезный проектах ее не используют, а некоторые часто пишут в VS 6.0 которая не поддерживает _getch()... для совместимости лучше getch() (имхо)

Цитата Сообщение от @lex Посмотреть сообщение
Monte-Cristo, 2 из этих понял))))))))а на счет этих actionov не совсем...
то есть так....если У значит первый акшон...если так то что такое breack?
даю установку: сейчас ты открываешь книженку по С++ и чатиешь про оператор switch(). на пальцах его дейсвтие не объяснишь
0
1183 / 468 / 87
Регистрация: 23.06.2009
Сообщений: 6,390
25.07.2009, 20:33  [ТС] 8
Monte-Cristo,сам не додумался...жаль что в книжке нету
0
Эксперт С++
7175 / 3234 / 81
Регистрация: 17.06.2009
Сообщений: 14,164
25.07.2009, 20:40 9
а применять getch() или _getch() я большей разницы не вижу
Разница в том, что getch() deprecated.
в серьезный проектах ее не используют
Скорее всего да
пишут в VS 6.0 которая не поддерживает
Visual Studio 6.0 лучше вообще не использовать, так как не соответствует стандарту C++. Хорошая совместимость со стандартом у VS2005.

Добавлено через 5 минут 41 секунду
odip, а объязательно функции?
Нет конечно - убери функцию и пиши свой код.

2@lex: Какой у тебя компилятор ?
0
2816 / 1407 / 107
Регистрация: 07.03.2009
Сообщений: 4,446
25.07.2009, 20:42 10
Цитата Сообщение от odip Посмотреть сообщение
Разница в том, что getch() deprecated.
ну и? goto тоже не рекомендуют применять..
функция strcpy() тоже не безопасна... так ты что применяешь strcpy_s()?

Цитата Сообщение от odip Посмотреть сообщение
Visual Studio 6.0 лучше вообще не использовать, так как не соответствует стандарту C++. Хорошая совместимость со стандартом у VS2005.
большинсвто студентов программируют или в VS 6.0, или в Borland C 3.1. Стандарты этих компиляторов очень устарелые, и не поддерживают _getch().
0
Maniac
Эксперт С++
1464 / 965 / 160
Регистрация: 02.01.2009
Сообщений: 2,820
Записей в блоге: 1
25.07.2009, 20:51 11
Цитата Сообщение от Monte-Cristo Посмотреть сообщение
для совместимости лучше getch()
Для совместимости лучше вообще не использовать getch() так как стандартом не поддержуется.
1
1183 / 468 / 87
Регистрация: 23.06.2009
Сообщений: 6,390
25.07.2009, 22:31  [ТС] 12
Цитата Сообщение от odip Посмотреть сообщение
Какой у тебя компилятор ?
vs08
0
25.07.2009, 22:31
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.07.2009, 22:31
Помогаю со студенческими работами здесь

Вывод цвета при нажатии определенной клавиши
Введите символ и введите на печать соответствующий ему цвет. Например, символу "г" соответствует...

При нажатии соответствующей клавиши запустить .exe
Помогите ,пожалуйста! У меня на С++ написана маленькая менюшечка,нужно что бы при нажатии...

Последовательный сдвиг текста при нажатии клавиши
Добрый день. Прошу помощи в решении лабы. Задание: Составить программу, последовательно сдвигающую...

Выбор функции при нажатии определённой клавиши
Итак, хочу написать код, который бы находил производную функции. Нужно только лишь для 4 функций....


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru