0 / 0 / 0
Регистрация: 19.01.2013
Сообщений: 23
|
||||||
1 | ||||||
Бесконечный цикл и EOF в VS 201305.08.2014, 09:34. Показов 2272. Ответов 15
Метки нет (Все метки)
При запуске на VS 2013 бесконечный цикл. При запуске на онлайн компиляторе сразу выводит "bggggg". Как я понимаю, что-то со студией. Можно с этим как-то исправиться без замены компилятора?
0
|
05.08.2014, 09:34 | |
Ответы с готовыми решениями:
15
Как реализовать бесконечный цикл While, но чтобы этот цикл не грузил процессор? Цикл do/while. Страница в браузере, уходит в бесконечный цикл и ничего не выводит. Почему цикл на при 1 уходит в бесконечный цикл? Цикл while c выходом по EOF со странным поведением |
2443 / 1841 / 406
Регистрация: 15.12.2013
Сообщений: 8,238
|
||||||
05.08.2014, 09:38 | 2 | |||||
Renevity, попробуйте так.
1
|
0 / 0 / 0
Регистрация: 19.01.2013
Сообщений: 23
|
|
05.08.2014, 09:55 [ТС] | 3 |
Аналогичная ситуация, только "lolwhut?" выводит аж 2 раза.
0
|
2443 / 1841 / 406
Регистрация: 15.12.2013
Сообщений: 8,238
|
|
05.08.2014, 09:58 | 4 |
Renevity, а что вы вводите?
0
|
0 / 0 / 0
Регистрация: 19.01.2013
Сообщений: 23
|
|
05.08.2014, 11:44 [ТС] | 5 |
0
|
8 / 8 / 0
Регистрация: 08.01.2013
Сообщений: 85
|
||||||
05.08.2014, 11:57 | 6 | |||||
Renevity, что типа такого:
1
|
2443 / 1841 / 406
Регистрация: 15.12.2013
Сообщений: 8,238
|
||||||
05.08.2014, 12:00 | 7 | |||||
Сообщение было отмечено Renevity как решение
Решение
Renevity, пробуйте так,напишите,что выведет.
Добавлено через 1 минуту QGuest, а зачем здесь функция isZero?
1
|
8 / 8 / 0
Регистрация: 08.01.2013
Сообщений: 85
|
|
05.08.2014, 12:04 | 8 |
функция atoi возвращает ноль если строка buffer будет вмещать в себе число 0, а также, если buffer вообще не будет числом.
То-есть, без этой проверки такой ввод будет неправильным и цикл завершится: 000000.
1
|
34 / 34 / 8
Регистрация: 13.06.2014
Сообщений: 509
|
|
05.08.2014, 12:19 | 9 |
а можно спросить в чем тут вообще смысл условия?
по-моему с таким условием цикл и должен быть бесконечным
0
|
0 / 0 / 0
Регистрация: 19.01.2013
Сообщений: 23
|
|
05.08.2014, 12:23 [ТС] | 10 |
О чорд. Во время ввода в цикле выводит число, а если ввести Ctrl + C, то слово.
Получается я неправильно понял, как работает EOF. Там где я читал об этом не было сказано о завершении цикла комбинацией клавиш. Но всё-равно спасибо, теперь я понимаю, как это работает.
0
|
327 / 230 / 55
Регистрация: 30.05.2014
Сообщений: 682
|
|
05.08.2014, 12:39 | 11 |
Оператор возвращает ссылку на поток,
http://www.cplusplus.com/refer... tor%3E%3E/ у потока есть оператор bool http://www.cplusplus.com/refer... ator_bool/ В итоге цикл будет выполняться, пока не будет введено что-то отличное от числа.
0
|
34 / 34 / 8
Регистрация: 13.06.2014
Сообщений: 509
|
|
05.08.2014, 13:43 | 12 |
это я уже понял, скомпилировав у себя и потестив программу)
но все же мне не понятно построение условия cin >> n и все, ни разу так не делал)
0
|
327 / 230 / 55
Регистрация: 30.05.2014
Сообщений: 682
|
|
05.08.2014, 14:18 | 13 |
Если рассматривать оператор как функцию, у которой есть возвращаемое значение, становится понятнее.
0
|
34 / 34 / 8
Регистрация: 13.06.2014
Сообщений: 509
|
|
05.08.2014, 14:25 | 14 |
uglyPinokkio, дак ведь если считывать допустим символ в переменную типа инт, туда запишется код, и все равно будет число, или я ошибаюсь?
0
|
327 / 230 / 55
Регистрация: 30.05.2014
Сообщений: 682
|
|
05.08.2014, 14:29 | 15 |
0
|
34 / 34 / 8
Регистрация: 13.06.2014
Сообщений: 509
|
|
05.08.2014, 16:23 | 16 |
uglyPinokkio, а ну да, я уже плохо помню, но последний раз, когда писал программу с вводом чисел, делал проверку на ввод символа, на я делал проверку просто по таблице аски со считыванием в обычную строку, прямо в инт не считываю никогда
0
|
05.08.2014, 16:23 | |
05.08.2014, 16:23 | |
Помогаю со студенческими работами здесь
16
При вводе данных цикл по поиску EOF в Getchar не останавливается Почему цикл с условием EOF читает последний символ 2 раза? Бесконечный цикл Бесконечный цикл Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |