0 / 0 / 0
Регистрация: 08.01.2018
Сообщений: 20
|
||||||||||||||||
1 | ||||||||||||||||
Как работает cin.peek, cin,get, cin.ignore, cin.clear?14.01.2018, 21:22. Просмотров 20458. Ответов 5
Здравствуйте, товарищи и не товарищи!
![]() Я только начал изучать C++, а уже использую вещи, которые мне не понятны, и прошу объяснить, как оно работает, что за что отвечает. Первый вопрос: Я часто использую циклы, и если у меня что-то типо такого
Второй вопрос: Я задался вопросом, как заставить срабатывать ветвление при вводе символа(не числа) в тип int/float без моего костыльного способа, и нашёл такой вот цикл:
0
|
|
14.01.2018, 21:22 | |
Объясните пожалуйста как работают cin.good(), cin.sync(), cin.clear() Защита от дурака при вводе текста с помощью: cin.get cin.clear cin.sync
|
|
139 / 67 / 46
Регистрация: 15.10.2015
Сообщений: 300
|
|
14.01.2018, 21:28 | 2 |
сброс битов ошибок входного стандартного потока
Цикл который очищает оставшиеся символы в потоке.
0
|
0 / 0 / 0
Регистрация: 08.01.2018
Сообщений: 20
|
|
14.01.2018, 21:39 [ТС] | 3 |
А cin.ignore() зачем мне приходится вводить(без него с одним cin.clear() игнорирует "cin")?
cin.get()-это же аналог getche()?
0
|
139 / 67 / 46
Регистрация: 15.10.2015
Сообщений: 300
|
||||||
14.01.2018, 21:41 | 4 | |||||
![]() Решение
Смотрит на следующий символ в потоке.
Пропуск символа в потоке. Пример
1
|
0 / 0 / 0
Регистрация: 08.01.2018
Сообщений: 20
|
|
14.01.2018, 21:54 [ТС] | 5 |
Я мало чего ещё понимаю, как я понимаю, при срабатывании цикла в входящем потоке остаётся '\n'?
А cin.clear убирает биты ошибок и cin.ignore убирает оставшейся '\n'? Если это так, то почему, если ввести всё как надо(то есть в int/float цифры) не надо подчищать '\n'?
0
|
139 / 67 / 46
Регистрация: 15.10.2015
Сообщений: 300
|
|
14.01.2018, 22:23 | 6 |
\n Это управляющий символ новой строки.
0
|
14.01.2018, 22:23 | |
Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь. Для чего в код вводится cin.ignore после того, как cin>> уже сработало? Метод getline(cin, m) не срабатывает без cin.ignore() / Ревью кода
cin.getline и cin.ignore Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |