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

Формат ввода - C++

Восстановить пароль Регистрация
 
4iFF
 Аватар для 4iFF
19 / 19 / 1
Регистрация: 06.07.2012
Сообщений: 88
06.07.2012, 22:27     Формат ввода #1
Проблема в том, что вводится число N а затем в следующий строке N чисел отделенных пробелом.Если сначала вводить N с помощью "cin >> N" а затем строку с помощью "cin.getline(<имя массива (сhar)>,1000,'\n')", то можно ввести только N, а строка уже не вводится (как бы пропускается).Как можно еще ввести N а затем массив типа char (в котором присутствуют пробелы) соблюдая данный формат ввода?

P.S.
Формат ввода соблюдать обязательно.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Avazart
 Аватар для Avazart
6906 / 5146 / 253
Регистрация: 10.12.2010
Сообщений: 22,646
Записей в блоге: 17
06.07.2012, 22:30     Формат ввода #2
Объясните по нормальнее,приведите пример...
Intel~lect
 Аватар для Intel~lect
135 / 124 / 2
Регистрация: 03.07.2012
Сообщений: 355
06.07.2012, 23:28     Формат ввода #3
Попробуй после cin >> N; записать cin.get(); Там вроде бы после ввода числа и нажатия клавиши Enter символ новой строки остается во входном потоке. А когда пытаешься считать строку с пробелами, то эта функция считывает этот символ новой строки '\n' и считает что строка закончена. Вроде бы так.
C++
1
2
3
cin >> N;
cin.get();
cin.getline(<имя массива(char)>, 1000, '\n');
4iFF
 Аватар для 4iFF
19 / 19 / 1
Регистрация: 06.07.2012
Сообщений: 88
06.07.2012, 23:48  [ТС]     Формат ввода #4
Intel~lect спасибо проблема решена.
Yandex
Объявления
06.07.2012, 23:48     Формат ввода
Ответ Создать тему
Опции темы

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