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

Как остановить цикл при вводе enter? - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.91
Sammm
3 / 3 / 1
Регистрация: 21.10.2012
Сообщений: 182
09.12.2013, 23:20     Как остановить цикл при вводе enter? #1
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
 
using namespace std;
 
int main()
{
    for (;;)
    {
        //как остановить цикл при вводе enter
    }
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
09.12.2013, 23:49     Как остановить цикл при вводе enter? #2
В цикле есть ввод?

Добавлено через 11 минут
Есть в цикле ввод или нет?
Sammm
3 / 3 / 1
Регистрация: 21.10.2012
Сообщений: 182
09.12.2013, 23:51  [ТС]     Как остановить цикл при вводе enter? #3
alsav22, нет, нужно чтобы, выводились числа от 1 до 6, и при нажатии enter произошел выход из цикла, и зафиксировалось то значение i, которое было в момент нажатия enter.

Добавлено через 41 секунду
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <stdlib.h>
 
using namespace std;
 
int main()
{
    for (int i = 1; i < 7; i++)
    {
        cout << i;
        system("cls");
        if (i == 6) i = 0;
    }
 
return 0;
}
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
09.12.2013, 23:58     Как остановить цикл при вводе enter? #4
Цитата Сообщение от Sammm Посмотреть сообщение
нет
Если нет, то простых способов, отследить нажатие enter, не знаю. Можно, используя функции API, но я с ними не знаком.
uhx
 Аватар для uhx
56 / 56 / 6
Регистрация: 11.07.2013
Сообщений: 300
10.12.2013, 00:20     Как остановить цикл при вводе enter? #5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <conio.h>
#include <Windows.h>
using namespace std;
 
int main()
{
    int i;
    for (i = 1; i < 7; i++)
    {
        cout << i;
        system("cls");
        
    if(GetAsyncKeyState(VK_RETURN))break;
        if (i == 6) i = 0;
    }
    cout<<i;
 system("pause>>void");
}
Библиотека <windows.h>
Правда отслеживает нажатие клавиши где угодно, независимо от окна. Т.е., даже если в браузере ентер нажмешь, то он выполнит условие... По другому не знаю, только если через switch(getch()), но там будет требовать нажатия какой либо клавиши при каждом повторе цикла.
Sammm
3 / 3 / 1
Регистрация: 21.10.2012
Сообщений: 182
10.12.2013, 01:00  [ТС]     Как остановить цикл при вводе enter? #6
uhx, большое спасибо
Yandex
Объявления
10.12.2013, 01:00     Как остановить цикл при вводе enter?
Ответ Создать тему
Опции темы

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