![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
:D
Форумчанин
Регистрация: 26.09.2010
Сообщений: 570
|
![]() Код:
3 ne-a :D ne-a :D 33 ne-a :D ne-a :D ne-a :D 333 ne-a :D ne-a :D ne-a :D ne-a :D f 9 когда я заменяю cin.get() на getch() все в норме, а тут такое, почему так?
Пишу ПО, создаю сайты, делаю курсовые работы, за деньги
C#, .NET, MS SQL, AngularJS, HTML, jQuery Последний раз редактировалось Stilet; 30.09.2010 в 08:18. |
![]() |
![]() |
![]() |
#2 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]()
Видимо тебя смутили дважды повторения?
Все дело в том что cin.get() обрабатывает ввод "поблочно" а не посимвольно. И не сразу а по нажатию Энтера. Например для введенной строки "12 34 67"+Энтер Цикл твой прокрутится 6 раз. Сначала get() вернет "12" потом пробел (не останавливая цикл, ибо пробел и 12 не равно "f"), потом сразу же 34, потом опять пробел и так пока строка не закончится энтером. Этот метод парсит введенную строку, потому для посимвольной обработки он не подходит в обычном виде.
I'm learning to live...
|
![]() |
![]() |
![]() |
#3 |
пыжашийся нуб
Пользователь
Регистрация: 19.06.2010
Сообщений: 93
|
![]()
Запусти такой код:
Код:
Вывод: <e>< > Пояснения требуются? |
![]() |
![]() |
![]() |
#4 |
пыжашийся нуб
Пользователь
Регистрация: 19.06.2010
Сообщений: 93
|
![]()
Stilet перепутал. Метод как раз посимвольно читает.
Если запустишь код выше, то увидишт, что для "12 34 67" будет даже не 6 запусков, а 9. Ввод: 12 34 67 Вывод: <1><2>< ><3><4>< ><6><7>< > |
![]() |
![]() |
![]() |
#5 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]()
Да. Перепутал. Согласен.
I'm learning to live...
|
![]() |
![]() |
![]() |
#6 |
Заблокирован
Регистрация: 10.08.2010
Сообщений: 566
|
![]()
я чуть чуть переделал,получилось следущее:
Код:
3 ne-a :D 2 ne-a :D 1 ne-a :D 0 4 //типа сумма |
![]() |
![]() |
![]() |
#7 |
:D
Форумчанин
Регистрация: 26.09.2010
Сообщений: 570
|
![]()
мне хватило бы и объяснения что cin.get() обрабатывает все вводимые символы. и энтер тоже
![]()
Пишу ПО, создаю сайты, делаю курсовые работы, за деньги
C#, .NET, MS SQL, AngularJS, HTML, jQuery |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Cin | _-Re@l-_ | Общие вопросы C/C++ | 8 | 25.06.2010 23:17 |
cin | ReaktiV | Общие вопросы C/C++ | 3 | 31.05.2010 15:57 |
istringstream() и cin>> | Amadeo | Общие вопросы C/C++ | 2 | 08.04.2010 13:38 |
cin??? | Paul_AG | Общие вопросы C/C++ | 4 | 24.04.2009 14:02 |
Не опознается cin | Stellvertreter | Общие вопросы C/C++ | 5 | 14.10.2008 08:10 |