Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.05.2012, 20:33   #1
SAMOUCHKA
Форумчанин
 
Регистрация: 07.08.2011
Сообщений: 576
По умолчанию ввод строки с пробелами

имеется объект типа string. В него пользователь должен вводить некоторый текст, включая пробелы. Но если сделать cin>>s;
то ввод закончится на пробеле. Как можно сделать, чтобы можно было вводить с пробелами? До тех пор пока не нажмеш entr.
SAMOUCHKA вне форума Ответить с цитированием
Старый 14.05.2012, 20:43   #2
Asdprom
Форумчанин
 
Регистрация: 05.02.2011
Сообщений: 119
По умолчанию

gets, _getws
для char.
Asdprom вне форума Ответить с цитированием
Старый 14.05.2012, 20:47   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

А scanf? Тоже до пробела читает?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 14.05.2012, 20:48   #4
Asdprom
Форумчанин
 
Регистрация: 05.02.2011
Сообщений: 119
По умолчанию

scanf
да не понятно как - то) gets - первым вспомнилось
Asdprom вне форума Ответить с цитированием
Старый 14.05.2012, 20:52   #5
Петррр
Форумчанин
 
Аватар для Петррр
 
Регистрация: 02.09.2011
Сообщений: 336
По умолчанию

Код:
#include <iostream>
#include <string>

int main()
{
    std::string str;
    std::cout << "Enter string: ";
    std::getline(std::cin, str, '\n');
    std::cout << "You entered: "
              << str 
              << std::endl;
    return 0;
}
Если ты не можешь найти то, ради чего стоит жить, лучше найти то, за что стоит умереть
Петррр вне форума Ответить с цитированием
Старый 14.05.2012, 20:55   #6
Asdprom
Форумчанин
 
Регистрация: 05.02.2011
Сообщений: 119
По умолчанию

Код:
#include <iostream>
#include <string>
using namespace std;

int main()
{
    string str;
    cout << "Enter string: ";
    str::getline(std::cin, str, '\n');
    cout << "You entered: "
              << str 
              << std::endl;
    return 0;
тогда уж.

Последний раз редактировалось Asdprom; 14.05.2012 в 21:05.
Asdprom вне форума Ответить с цитированием
Старый 14.05.2012, 21:18   #7
SAMOUCHKA
Форумчанин
 
Регистрация: 07.08.2011
Сообщений: 576
По умолчанию

gets тогда какой размер массива мне брать? Не известно. Можно конечно с запасом но мне кажется это криво.как то. Нет ли в классе string метода, для подобного случая?
SAMOUCHKA вне форума Ответить с цитированием
Старый 14.05.2012, 21:22   #8
Петррр
Форумчанин
 
Аватар для Петррр
 
Регистрация: 02.09.2011
Сообщений: 336
По умолчанию

SAMOUCHKA, не нужно тупить я же привел пример. std::getline считывает из потока в std::string пока не встретит перенос строки.
Если ты не можешь найти то, ради чего стоит жить, лучше найти то, за что стоит умереть
Петррр вне форума Ответить с цитированием
Старый 14.05.2012, 21:28   #9
SAMOUCHKA
Форумчанин
 
Регистрация: 07.08.2011
Сообщений: 576
По умолчанию

прошу прощения. Интернет тормозит. Пока я свое сообщение отправлял, бы уже свое написали. Спасибо, приду домой попробую
SAMOUCHKA вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Составить строку символов, лексико-графически упорядочив слова исходной строки и разделив их пробелами (С++) trum Помощь студентам 0 20.03.2012 01:01
[PascalABC]Строки. Отделение слов пробелами. IvanSect Помощь студентам 1 10.03.2012 13:45
Как организовать ввод строки с пробелами? Adminx Общие вопросы C/C++ 11 20.11.2009 02:33
Чтение строки с пробелами phpcreator Помощь студентам 5 15.10.2009 18:13
Ввод строки с пробелами Сергей089 Помощь студентам 15 24.04.2009 23:01