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

Выход из цикла - C++

Восстановить пароль Регистрация
 
Romadzao
7 / 7 / 1
Регистрация: 02.07.2012
Сообщений: 120
06.07.2012, 22:54     Выход из цикла #1
Есть цикл. Он выполняется. Долго. Пока он выполняется я нажимаю Esc и он становится на паузу. Как осуществить?

Добавлено через 10 минут
Может что-то связанное с многопоточностью мне нужно?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.07.2012, 22:54     Выход из цикла
Посмотрите здесь:

Автоматический выход из цикла. C++
Выход из цикла C++
Принудительный выход из цикла C++
Преждевременный выход из цикла C++
C++ Выход за пределы цикла
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
_or_75
-1 / 0 / 0
Регистрация: 18.02.2012
Сообщений: 244
06.07.2012, 23:03     Выход из цикла #2
это связано с считыванием нажатие клавишы с клавиатуры, что то вроде в цикле проверяеш
нажатие кнопки с клавы, методом getkeystate, а дальше по стандарту if
ШКІПЕР
 Аватар для ШКІПЕР
93 / 93 / 7
Регистрация: 14.04.2010
Сообщений: 280
Записей в блоге: 9
Завершенные тесты: 1
06.07.2012, 23:07     Выход из цикла #3
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
 
bool wait() 
{
    while(_getch()!=27);
    return true;
    
}
    
 
int main()
{
    while (true)
    {
        printf("|");
        kbhit() && _getch() == 27 ? wait() : NULL ;
    }
    return EXIT_SUCCESS;
}
Romadzao
7 / 7 / 1
Регистрация: 02.07.2012
Сообщений: 120
07.07.2012, 02:08  [ТС]     Выход из цикла #4
Спасибо, kbhit() - функция, которую я и искал, но есть пара вопросов:
C
1
kbhit() && _getch() == 27 ? wait() : NULL ;
Объясни, пожалуйста, что в данном примере означает вопрос и двоеточие, также какой смысл писать EXIT_SUCCESS; вместо 0 и для этого библиотеку добавлять.
Avazart
 Аватар для Avazart
6901 / 5141 / 252
Регистрация: 10.12.2010
Сообщений: 22,604
Записей в блоге: 17
07.07.2012, 02:43     Выход из цикла #5
C++
1
a?b:c
-тетрарное условие
http://ru.wikipedia.org/wiki/Тернарн...овная_операция
Romadzao
7 / 7 / 1
Регистрация: 02.07.2012
Сообщений: 120
07.07.2012, 03:09  [ТС]     Выход из цикла #6
http://ru.wikipedia.org/wiki/%D0%A2%...86%D0%B8%D1%8F ?
Avazart
 Аватар для Avazart
6901 / 5141 / 252
Регистрация: 10.12.2010
Сообщений: 22,604
Записей в блоге: 17
07.07.2012, 03:10     Выход из цикла #7
C++
1
kbhit() && _getch() == 27 ? wait() : NULL ; //- используется тетрарное условие
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.07.2012, 09:45     Выход из цикла
Еще ссылки по теме:

Выход из вложенного цикла C++
Принудительный выход из цикла C++
Выход из цикла C++

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

Или воспользуйтесь поиском по форуму:
ШКІПЕР
 Аватар для ШКІПЕР
93 / 93 / 7
Регистрация: 14.04.2010
Сообщений: 280
Записей в блоге: 9
Завершенные тесты: 1
07.07.2012, 09:45     Выход из цикла #8
Цитата Сообщение от Romadzao Посмотреть сообщение
что в данном примере означает вопрос и двоеточие
Общий принцип записи таков:
Код
условие ? если_условие_выполняется : если_не_выполняется;
вариации:
Код
что-то = условие ? значение1 : значение2;
Цитата Сообщение от Romadzao Посмотреть сообщение
также какой смысл писать EXIT_SUCCESS; вместо 0 и для этого библиотеку добавлять.
Ограничений на задание нет никаких, так что это лично мой взгляд на читабельность кода. Константы есть под большинство случаев, ну так почему бы ими не воспользоватся ? Это решение на туристов или для кастомеров, если вы участвуете в спортивном программировании - дак там стоит экономить на символах
Yandex
Объявления
07.07.2012, 09:45     Выход из цикла
Ответ Создать тему
Опции темы

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