Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.70/440: Рейтинг темы: голосов - 440, средняя оценка - 4.70
0 / 0 / 0
Регистрация: 27.03.2011
Сообщений: 28
1

Описание istringstream

09.05.2011, 18:52. Показов 90248. Ответов 15
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Есть программа :
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
    
#include <iostream>
#include <sstream>
using namespace std;
 int main()
{      
 while(int a =1)
       {
        setlocale(LC_ALL,"Rus");
        char sentence[256];
        string word;
        int i;
         cout<<"Введите текст:\n";
        cin.getline(sentence,256);
        string row(sentence);
         for(i=0;i<row.length();i++)
                if(row[i]=='.' || row[i]==',' || row[i]=='?' || row[i]=='!')
                        row[i]=' ';
        i=0;
        istringstream ist(row);
        while(ist>>word)
                i++;
         cout<<" Слов найдено : "<<i<< endl<<endl;
        }
        cin.get();
        return 0;
}
Кто знает, или может подсказать как работает istringstream из #include <sstream> ? что это: функция, класс, или что-то другое ? И что именно происходит в строках
C++
1
2
 istringstream ist(row);
        while(ist>>word)
Я понимаю, что это проверка "слово это или не слово" , но как именно это работает?
Заранее благодарен.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.05.2011, 18:52
Ответы с готовыми решениями:

Описание функции istringstream
Добрый день, есть такая конструкция istringstream ist(target); while(ist&gt;&gt;cur) {...

Getline and istringstream
int main() { cout &lt;&lt; &quot;Vvodim stroku: &quot;; string str,str2; getline(cin, str); ...

Istringstream, istream_iterator
std::string string1 std::cout &lt;&lt; &quot;Введите первую неубывающую последовательность натуральных чисел:...

Ostringstream и istringstream
int StrToInt(string buf) { istringstream stream(buf); int decimal; ...

15
Freelance
Эксперт С++
2891 / 1826 / 356
Регистрация: 09.09.2010
Сообщений: 3,841
09.05.2011, 18:59 2
C++
1
2
istringstream ist(row);//Превращаем строку в поток
  while(ist>>word)//Читаем из потока данные, при помощи оператора >> , разделителем служить пробел
2
0 / 0 / 0
Регистрация: 27.03.2011
Сообщений: 28
09.05.2011, 19:00  [ТС] 3
istringstream что это? Есть подробное описание?
0
Freelance
Эксперт С++
2891 / 1826 / 356
Регистрация: 09.09.2010
Сообщений: 3,841
09.05.2011, 19:02 4
Цитата Сообщение от Batarchuk Посмотреть сообщение
istringstream что это?
Класс.

Добавлено через 1 минуту
Читай тут
3
0 / 0 / 0
Регистрация: 27.03.2011
Сообщений: 28
09.05.2011, 19:11  [ТС] 5
C++
1
2
istringstream ist(row);
        while(ist>>word)
А откуда у нас появляется "word"?

П.С. Как я понял из описания выше istringstream это класс элементов , row параметр, клас istringstream превращает row в поток ist ит проверяет есть ли это член класса? Или не так?
0
Freelance
Эксперт С++
2891 / 1826 / 356
Регистрация: 09.09.2010
Сообщений: 3,841
09.05.2011, 19:13 6
Цитата Сообщение от Batarchuk Посмотреть сообщение
А откуда у нас появляется "word"?
C++
1
std::string word;
0
0 / 0 / 0
Регистрация: 27.03.2011
Сообщений: 28
09.05.2011, 19:15  [ТС] 7
istringstream это класс элементов , row параметр, клас istringstream превращает row в поток ist ит проверяет есть ли это член класса? Правильно понял?
Про istringstream мало информации.
0
601 / 569 / 104
Регистрация: 07.11.2010
Сообщений: 2,004
09.05.2011, 19:18 8
Цитата Сообщение от Batarchuk Посмотреть сообщение
istringstream это класс элементов , row параметр, клас istringstream превращает row в поток ist ит проверяет есть ли это член класса? Правильно понял?
П.С. Преподаватель сказала детально описать, что это такое и как работает
учебник для начала откройте
0
Freelance
Эксперт С++
2891 / 1826 / 356
Регистрация: 09.09.2010
Сообщений: 3,841
09.05.2011, 19:20 9
Batarchuk, Я же вам дал ссылку, какие еще вопросы ?
0
0 / 0 / 0
Регистрация: 27.03.2011
Сообщений: 28
09.05.2011, 19:22  [ТС] 10
Я смотрел, спасибо, просто с английским плохо дружу, а переводчик не корректно переводит.
0
0 / 0 / 0
Регистрация: 27.03.2011
Сообщений: 28
09.05.2011, 19:22  [ТС] 11
Цитата Сообщение от panicwassano Посмотреть сообщение
учебник для начала откройте
Если бы ещё там было то, что надо))
0
Freelance
Эксперт С++
2891 / 1826 / 356
Регистрация: 09.09.2010
Сообщений: 3,841
09.05.2011, 19:25 12
5 сек гугла:
istringstream - это строковой поток ввода. Конструктор istringstream() со строковым аргументом прикрепляет создаваемый объект потока к указанной строке. То есть теперь информация будет считываться из стандартной строки точно таким же образом, как и из cin, объекта класса потока ввода istream.
cin считывает не из потока (он сам является потоком), а откуда-то из стандартного приемника (из консоли)
4
0 / 0 / 0
Регистрация: 27.03.2011
Сообщений: 28
09.05.2011, 19:28  [ТС] 13
Цитата Сообщение от asics Посмотреть сообщение
5 сек гугла:
Спасибо, это оно!
Не знаю почему не получалось найти, благодарю!
0
Freelance
Эксперт С++
2891 / 1826 / 356
Регистрация: 09.09.2010
Сообщений: 3,841
09.05.2011, 20:38 14
 Комментарий модератора 
И в то же время "Запрещено накручивать репутацию любым способом, включая создание пользователей-клонов, а также склонять (агитировать) других пользователей к ее повышению.", 3.9


Добавлено через 1 час 6 минут

Не по теме:

А я разве кого-то "склонял" ?=-O Я процитировал правила форума, разве это запрещено ?

0
silent_1991
09.05.2011, 21:01
  #15

Не по теме:

asics, в таком контексте да, это звучит как последняя часть пункта, то бишь "Запрещено ... склонять (агитировать) других пользователей к ее повышению".

0
asics
09.05.2011, 21:04     Описание istringstream
  #16

Не по теме:

Ладно, не буду спорить, но во многих разделах, модераторы сами оставляют такие посты, так-что, в каком-то роде, я выполнил вашу роботу.:)

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.05.2011, 21:04

Проблемка с istringstream
Суть в том, что istringstream() превращает строку в поток и разделителем между словами служит...

Работа с istringstream
#include &lt;iostream&gt; #include &lt;sstream&gt; #include &lt;string&gt; int main() { std::string s{ &quot;10...

Перевернуть слово istringstream
Объясните пожалуйста работу дальнейшую после 12 строчки, что выполняется, как работает, гугл мне...

Что такое istringstream?
#include &lt;iostream&gt; #include &lt;string&gt; #include &lt;sstream&gt; #include &lt;algorithm&gt; using namespace...

Чем заменить istringstream?
Задание:Найти в списке из 7 слов все слова, состоящие из заданного количества букв. #include...

Не могу справиться с функцией с++ istringstream
В общем, изначальный код был таков: #include &quot;stdafx.h&quot; #include&lt;iostream&gt; #include &lt;conio.h&gt;...


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

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru