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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
anubis1768
4 / 4 / 0
Регистрация: 23.02.2013
Сообщений: 151
#1

Как вычислить, было ли нажатие пробела? - C++

15.03.2013, 19:10. Просмотров 423. Ответов 6
Метки нет (Все метки)

Как вычислить, было ли нажатие пробела при использовании объекта cin? Например, читаю строку, ввожу с пробелами, а в файле, в котором записывается строка все без пробелов. А нужно, чтобы было с пробелами
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.03.2013, 19:10
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как вычислить, было ли нажатие пробела? (C++):

как узнать нажатие клавиши было программным или от пользователя - C++
Всем доброго времени суток. Собственно сабж. Как узнать нажал клавишу пользователь или программа, не прибегая к написанию своих дров.

Подсчитать количество слов, в тексте от пробела до пробела, и количество букв - C++
нужно создать програму считает количество слов, в тексте от пробела до пробела(если два пробела сразу конец текста), а также ...

как задать знак пробела? - C++
Дано натуральное число n и символы s1,....,sn. Группы символов разделённые пробелом будут называться словами. Найти длину самого короткого...

Как запретить ввод пробела и букв? - C++
Собственно тут если вводятся буквы, то программа творит что то страшное... Да и через пробел вытворяет что то неадекватное. Нельзя ли их...

Как взять символы из строки до пробела? - C++
Помогите разобраться. Есть строка символов типа string, допустим: string s="Hello World!"; Нужно взять из строки все символы от начала...

Как детектировать присутствие пробела в строке? Regex - C++
пробовал по разному, всегда возвращает False std::regex_match(L"sd ", std::wregex(L"/()+/g")); // false std::regex_match(L"sd ",...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
alsav22
5417 / 4813 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
15.03.2013, 19:35 #2
Можно так отменить пропуск пробелов:
C++
1
cin >> noskipws;
Использовать не оператор извлечения >> , а, напрмер, метод cin.get().
Если строку хотите записать в файл, то читайте её методом cin.getline() или функцией getline(). Всё зависит от конкретной задачи.
cxemuch205
1 / 1 / 1
Регистрация: 31.10.2012
Сообщений: 46
15.03.2013, 19:45 #3
Попробуй подключить библиотеку <string.h> и использовать для ввода функцию gets(<имя_строки>); для вывода можно puts(<имя_строки>);
anubis1768
4 / 4 / 0
Регистрация: 23.02.2013
Сообщений: 151
15.03.2013, 20:17  [ТС] #4
alsav22, значить, чтобы мне ввести С++ строку, скажем string temp нужно написать вот так:
C++
1
cin >> noskipws >> temp;
?
но оно ругается, что noskipws не обьявленый идентификатор.
про cin.get() знаю, но опять же, как вычислить, был ли нажат Enter

Добавлено через 2 минуты
Цитата Сообщение от cxemuch205 Посмотреть сообщение
Попробуй
Я конкретно вопрос задал:
Цитата Сообщение от anubis1768 Посмотреть сообщение
при использовании объекта cin
Добавлено через 2 минуты
разобрался, забыл что манипуляторы ввода и вывода также входят в std

Добавлено через 5 минут
через noskipws неправильно работает, зациклывает программу и все. Можно ли как то вычислить методом cin.get() был ли нажат Enter?
Croessmah
Модератор
Эксперт CЭксперт С++
13132 / 7395 / 828
Регистрация: 27.09.2012
Сообщений: 18,222
Записей в блоге: 3
Завершенные тесты: 1
15.03.2013, 20:19 #5
Цитата Сообщение от anubis1768 Посмотреть сообщение
как вычислить, был ли нажат Enter
cin.get() возвращает управление при нажатии Enter
anubis1768
4 / 4 / 0
Регистрация: 23.02.2013
Сообщений: 151
15.03.2013, 20:27  [ТС] #6
все, разобрался, всем спасибо.
alsav22
5417 / 4813 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
15.03.2013, 20:31 #7
Цитата Сообщение от anubis1768 Посмотреть сообщение
чтобы мне ввести С++ строку, скажем string temp нужно написать вот так:
C++
1
getline(cin, temp);
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.03.2013, 20:31
Привет! Вот еще темы с ответами:

Как проигнорировать нажатие пробела на кнопке? - C#
Нужно чтобы при нажатии пробела на кнопке ничего не происходило, а enter все так же работал. Заранее спасибо =)

Как перехватить нажатие пробела в фокусе кнопки - C#
Приветствую всех. Собственно, сабж. private void btCancel_KeyPress(object sender, KeyPressEventArgs e) { ...

Как сделать так чтоб не было в начале ни 0 ни пробела - Pascal ABC
Дан текстовый файл (он у меня input.txt), который содержит действительные числа (кол-во чисел не больше 1000). Нужно создать массив и...

Программное нажатие пробела - Delphi
Как сделать,чтобы при нажатии на определенную кнопку программа делала несколько нажатий пробела в активное окно?


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
15.03.2013, 20:31
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru