Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Показать сообщение отдельно
Gepar
1181 / 537 / 77
Регистрация: 01.07.2009
Сообщений: 3,517
16.07.2011, 20:27  [ТС]

Strtok() и string - C++

16.07.2011, 20:27. Просмотров 8174. Ответов 25
Метки (Все метки)

nameless, да, так помогло, у меня в итоге вот что получилось:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <iomanip>
#include <string>
#include <cstring>
using namespace std;
 
int main()
{
    string str;
    cout<<"Enter string: ";
    getline(cin,str);
    //пока в строке есть знаки пунктуации
    while(str.find_first_of(":,.;!?")!=-1)
     str.replace(str.find_first_of(":,.;!?"),1," "); //заменять их на пробелы
    //создать указатель на текущее слово
    char *str2=strtok(const_cast<char*>(str.c_str())," ");
    //если есть данные то вывести их
    if(str2)
     cout<<str2<<'\t';
    //пока есть слова выводить их на печать
    while(str2!=0)
     cout<<(str2=strtok(NULL," "))<<'\t';
}
Хотя я не знаю что такое const_cast, первый раз увидел такую конвертацию да и не понял что она делает. Ну str.c_str() вернула мне const указатель на мою строку в виде символьной строки в стиле си, а что сделал const_cast с ней ? Неужто как-то перевёл в обычную строку (не const) чего хотела от меня strtok()?
http://www.cyberforum.ru/cpp-beginners/thread1794916.html

Добавлено через 1 минуту
Ну я же задачи делаю по задачнику, захотел автор strtok вот и делаю с strtok, тут идёт расчёт на то что если я извратом сделаю с strtok то уж с функциями для работы с string я точно это задание осилю
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.07.2011, 20:27
Готовые ответы и решения для C++ Strtok() и string:

strtok для string
Существует ли strtok для string? Или его аналог

Использование STRTOK Разбить строку на слова, из слов составить список C++ Функция strtok
Задача Дана строка слов с разделителями, в данном примере слова с пробелами...

Доступ к паре в map<string, vector<pair<string, string>>>Temp
Подскажите пожалуйста как получить данные в векторе пар ? void...

strtok
как с помощью функции strtok вывести последнее слово

strtok
Привет! Решаю задачку на строки char. Возникла проблема вот код: ...

25
Strtok() и string C++   Следующее сообщение темы 
Другие темы раздела
C++ Read PNG in C http://www.cyberforum.ru/cpp-beginners/thread333615.html
Всем привет. Подскажите как на С (без привлечения сторонних библиотек) прочитать PNG файл. В конечном итоге хотелось бы получить двумерный массив, где номер элемента - это положения пикселя, а сам...
C++ Пузырьковый метод Не могу написать простейший пузырьковый метод. Откуда берется ноль ? #include <iostream> using namespace std; int main() {setlocale(LC_ALL,"Rus"); int a,r=100; for(int y=0;y<5;y++)... http://www.cyberforum.ru/cpp-beginners/thread333594.html
C++ error LNK2019: ссылка на неразрешенный внешний символ
Всем привет. Вопрос легкий, но что-то я застопорился. Делал задачки с книги Джесса Либерти, и на классах завис. По идеи все должно было работать без проблем,но увы... Вот код задачи. #include...
операция повторения C++
#include <iostream> using namespace std; int main() { int match, win, ni, por; cout<<"Введите количество матчей: "; cin >> match; cout<<"Введите количество побед: ";...
C++ как сделать вывод текста, результата и продолжение текста http://www.cyberforum.ru/cpp-beginners/thread333520.html
#include <iostream> using namespace std; int main() { int win; cout<<"Введите цифру\n"; cin >> win; cout<<"Результат " << win * 3 << endl; ...
C++ чтение из файла Здравствуйте, уважаемые программисты. Есть файл с записями (объектами), у каждой записи 3 параметра (переменные). Я считываю запись, упаковываю ее в объект и добавляю объект в конец вектора... подробнее
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru