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

String в массив - C++

Восстановить пароль Регистрация
 
gogaby
1 / 1 / 0
Регистрация: 15.11.2011
Сообщений: 28
22.11.2011, 16:23     String в массив #1
Нужно из string слова разделенные пробелами занести в массив каждое слово отдельно.Нельзя использовать тип *сhar. Как это сделать и какой массив нужно создавать?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
accept
4837 / 3236 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
22.11.2011, 16:30     String в массив #2
можно создать вектор
а разделять через stringstream
gogaby
1 / 1 / 0
Регистрация: 15.11.2011
Сообщений: 28
22.11.2011, 16:34  [ТС]     String в массив #3
если можно, пожалуйста на примере, как работает и как использовать stringstream - нигде про него ничего не нашел((
-=ЮрА=-
Заблокирован
Автор FAQ
22.11.2011, 17:06     String в массив #4
Цитата Сообщение от gogaby Посмотреть сообщение
если можно, пожалуйста на примере, как работает и как использовать stringstream - нигде про него ничего не нашел((
http://www.cplusplus.com/reference/i.../stringstream/

Добавлено через 15 минут
gogaby, так и не увидел поняли вы или нет, вот простецкий код
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <sstream>
#include <string>
using namespace std;
 
int main()
{
    string str;
    
    cout<<"Enter text : ";
    getline(cin,str);
    
    stringstream ss;
    ss<<str;
    while(ss>>str)
        cout<<str<<endl;
    system("pause");
    return 0;
}
Enter text : This is testing of algorithm

This
is
testing
of
algorithm
Для продолжения нажмите любую клавишу . . .


(на старых компиляторах после текста жмём Enter 2 раза подряд - это связано с испоьзованием getline(cin,str); - так можно считать строку с пробелами)
accept
4837 / 3236 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
22.11.2011, 17:09     String в массив #5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <string>
#include <sstream>
 
using namespace std;
 
// демонстрирует stringstream
int main()
{
    string s = "abcd 1 defg 2";
    istringstream iss;
    string tmp;
    int n1, n2;
    
    iss.str(s);
    if (iss >> tmp >> n1)
        cout << tmp << " " << n1 << endl;
    if (iss >> tmp >> n2)
        cout << tmp << " " << n2 << endl;
    return 0;
}
Код
[guest@localhost tests]$ .iso++ t.cpp -o t
[guest@localhost tests]$ ./t
abcd 1
defg 2
[guest@localhost tests]$
gogaby
1 / 1 / 0
Регистрация: 15.11.2011
Сообщений: 28
22.11.2011, 17:26  [ТС]     String в массив #6
пока писал ответ уже все разъяснили) все понял, спасибо большое!
Yandex
Объявления
22.11.2011, 17:26     String в массив
Ответ Создать тему

Метки
stringstream
Опции темы

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