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

while ( не нажата клавиша) - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.75
Svyatoslav7
 Аватар для Svyatoslav7
18 / 18 / 8
Регистрация: 19.08.2012
Сообщений: 281
25.07.2013, 17:33     while ( не нажата клавиша) #1
Есть цикл while. Нужно что б цикл заканчивал виполнение если нажата клавиша ...

Добавлено через 9 секунд
клавиша любая
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Valentina
66 / 66 / 3
Регистрация: 13.05.2012
Сообщений: 130
25.07.2013, 17:43     while ( не нажата клавиша) #2
C++
1
2
3
4
5
char ch;
while((ch=getche())!='n')
{
    cout<<"continue"<<endl;
}
или
C++
1
2
3
4
5
6
7
char ch;
do
{
    ........
    cout<<"y/n"<<endl;
    cin>>ch;
}while(ch!='n');
Svyatoslav7
 Аватар для Svyatoslav7
18 / 18 / 8
Регистрация: 19.08.2012
Сообщений: 281
25.07.2013, 17:59  [ТС]     while ( не нажата клавиша) #3
Цитата Сообщение от Valentina Посмотреть сообщение
'n'
а ет виступает любая клавиша??? или только n

Добавлено через 2 минуты
Цитата Сообщение от Valentina Посмотреть сообщение
char ch;
do
{
* * ........
* * cout<<"y/n"<<endl;
* * cin>>ch;
}while(ch!='n');
ето не то

Добавлено через 21 секунду
Цитата Сообщение от Valentina Посмотреть сообщение
getche
на ето компилятор ругается

Добавлено через 4 минуты
Цитата Сообщение от Valentina Посмотреть сообщение
getche
ето виправил на _getch и пошло но мне нужно что б программа сама виводила себе сообщение и потом если я нажму на клавишу она перестанет виполняться

Добавлено через 7 минут
help
akk
 Аватар для akk
44 / 44 / 7
Регистрация: 28.01.2012
Сообщений: 341
25.07.2013, 18:05     while ( не нажата клавиша) #4
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
#include <conio.h>
int main()
{
    while(!_kbhit())
    {
        std::cout<<"Hello"<<std::endl;
    }
    return 0;
}
Svyatoslav7
 Аватар для Svyatoslav7
18 / 18 / 8
Регистрация: 19.08.2012
Сообщений: 281
25.07.2013, 18:07  [ТС]     while ( не нажата клавиша) #5
akk, а сюда
Цитата Сообщение от akk Посмотреть сообщение
!_kbhit()
можно enten втавить??
akk
 Аватар для akk
44 / 44 / 7
Регистрация: 28.01.2012
Сообщений: 341
25.07.2013, 18:19     while ( не нажата клавиша) #6
Цитата Сообщение от Svyatoslav7 Посмотреть сообщение
можно enten втавить??
что такое enten?
Svyatoslav7
 Аватар для Svyatoslav7
18 / 18 / 8
Регистрация: 19.08.2012
Сообщений: 281
25.07.2013, 18:19  [ТС]     while ( не нажата клавиша) #7
Цитата Сообщение от akk Посмотреть сообщение
enten
опечатка enter
akk
 Аватар для akk
44 / 44 / 7
Регистрация: 28.01.2012
Сообщений: 341
25.07.2013, 18:23     while ( не нажата клавиша) #8
Svyatoslav7, то есть вставить enter? Вы можете нажать на enter и программа выйдет из цикла.
Svyatoslav7
 Аватар для Svyatoslav7
18 / 18 / 8
Регистрация: 19.08.2012
Сообщений: 281
25.07.2013, 18:25  [ТС]     while ( не нажата клавиша) #9
akk, от на любую кнопку ви мне очень помогли.... и меня ещо интересует как зделать только под 1 клавишу от например ентер программа заканчивает виполнение .... а если я другие жму программа все равно работает и дале
Valentina
66 / 66 / 3
Регистрация: 13.05.2012
Сообщений: 130
25.07.2013, 18:26     while ( не нажата клавиша) #10
для Enter
C++
1
ch=getche())!='\r'
Svyatoslav7
 Аватар для Svyatoslav7
18 / 18 / 8
Регистрация: 19.08.2012
Сообщений: 281
25.07.2013, 18:28  [ТС]     while ( не нажата клавиша) #11
Цитата Сообщение от Valentina Посмотреть сообщение
1
ch=getche())!='\r'
ет что то не то
akk
 Аватар для akk
44 / 44 / 7
Регистрация: 28.01.2012
Сообщений: 341
25.07.2013, 19:06     while ( не нажата клавиша) #12
Svyatoslav7, можно как-то так. Для входа в цикл нужно нажать на любую клавишу, а выйти из него можно, только если нажали на enter.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <windows.h>
#include <conio.h>
int main()
{
    _getch();
    while(true)
    {
        if(GetKeyState(VK_RETURN)) break;
        
        std::cout<<"Hello"<<std::endl;
    }
    return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.07.2013, 19:12     while ( не нажата клавиша)
Еще ссылки по теме:

Как определить, нажата ли клавиша Enter C++
C++ Создать консольное приложение, которое продолжало бы работать до тех пор, пока не нажата клавиша "y"
Нажата или отпущена конкретная клавиша С++ C++

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

Или воспользуйтесь поиском по форуму:
Svyatoslav7
 Аватар для Svyatoslav7
18 / 18 / 8
Регистрация: 19.08.2012
Сообщений: 281
25.07.2013, 19:12  [ТС]     while ( не нажата клавиша) #13
спасибо))
Yandex
Объявления
25.07.2013, 19:12     while ( не нажата клавиша)
Ответ Создать тему
Опции темы

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