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

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++) {cout<<"Введите "<<y+1<<" число --> "; cin>>a; http://www.cyberforum.ru/cpp-beginners/thread333594.html
C++ error LNK2019: ссылка на неразрешенный внешний символ
Всем привет. Вопрос легкий, но что-то я застопорился. Делал задачки с книги Джесса Либерти, и на классах завис. По идеи все должно было работать без проблем,но увы... Вот код задачи. #include <iostream> #include <conio.h> using namespace std;
операция повторения C++
#include <iostream> using namespace std; int main() { int match, win, ni, por; cout<<"Введите количество матчей: "; cin >> match; cout<<"Введите количество побед: "; cin >> win;
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; system("pause");
C++ чтение из файла Здравствуйте, уважаемые программисты. Есть файл с записями (объектами), у каждой записи 3 параметра (переменные). Я считываю запись, упаковываю ее в объект и добавляю объект в конец вектора (STL). Почему-то последняя запись считывается 2 раза Подскажите пожалуйста почему так происходит, и как это исправить void read_to_mas_from_file(char * filename, vector<user> & users) { подробнее

Показать сообщение отдельно
Gepar
1175 / 531 / 20
Регистрация: 01.07.2009
Сообщений: 3,517
16.07.2011, 20:27  [ТС]     Strtok() и string
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()?

Добавлено через 1 минуту
Ну я же задачи делаю по задачнику, захотел автор strtok вот и делаю с strtok, тут идёт расчёт на то что если я извратом сделаю с strtok то уж с функциями для работы с string я точно это задание осилю
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru