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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Tester64
395 / 356 / 43
Регистрация: 22.05.2013
Сообщений: 2,518
#1

Тяжело ли написать утилитку, которая работает как DOS-команда "pause" - C++

05.08.2014, 17:47. Просмотров 252. Ответов 2
Метки нет (Все метки)

Тяжело ли написать утилитку, которая работает как DOS-команда "pause", но с автопродолжением через (например) 10 секунд?

Научился обрабатывать таймер в бесконечном цикле. Самописный Sleep();
Научился получать код нажатой клавиши через getch(). Но они похоже взаимо-исключающие...

getch похоже блокирует цикл в ожидании следующей клавиши. Можно ли получить код клавиши без блокировки? Например 0 при не нажатой?
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.08.2014, 17:47     Тяжело ли написать утилитку, которая работает как DOS-команда "pause"
Посмотрите здесь:

Написать программу, которая подводит итоги конкурса "5 лучших товаров года". C++
C++ Написать и протестировать функцию,которая "переворачивает" строку,передаваемую ей в качестве параметра
Написать функцию, которая в массиве char ищет цифры и заменяет их символом "#" C++
Аналог функции system("pause"); C++
C++ что делать если программа не включается при функции system("pause");?
Выводит ошибку на system ("pause"); в чем дело? C++
C++ Почемо выдает ошибку в строке system("pause")
Написать программу которая будет "переворачивать слова в обратную строну" C++
C++ Эксперименты с system("pause >> void");
C++ Сообщение об ошибке в строке system("pause");
Написать программу, которая устанавливается, и отображается во вкладке "Программы и компоненты" C++
C++ зачем нужна system("pause >nul");

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zss
Модератор
Эксперт С++
6184 / 5787 / 1874
Регистрация: 18.12.2011
Сообщений: 14,784
Завершенные тесты: 1
05.08.2014, 17:53     Тяжело ли написать утилитку, которая работает как DOS-команда "pause" #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Используйте
int _kbhit( void );


Return Value
_kbhit returns a nonzero value if a key has been pressed. Otherwise, it returns 0.

Remarks
The _kbhit function checks the console for a recent keystroke. If the function returns a nonzero value
Tester64
395 / 356 / 43
Регистрация: 22.05.2013
Сообщений: 2,518
05.08.2014, 20:16  [ТС]     Тяжело ли написать утилитку, которая работает как DOS-команда "pause" #3
Цитата Сообщение от zss Посмотреть сообщение
a nonzero value if a key has been pressed
Как всегда "аппетит приходит во время еды"... Можно ли получить КОД нажатой клавиши? Что-бы одни клавиши отключали таймер, а другие выходили из цикла...Вашей командой получил только факт нажатия.

Добавлено через 16 минут
Все! нашел! if (kbhit()) input = getch();
Yandex
Объявления
05.08.2014, 20:16     Тяжело ли написать утилитку, которая работает как DOS-команда "pause"
Ответ Создать тему
Опции темы

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