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

string::npos задать корректное условие - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Метод Симпсона http://www.cyberforum.ru/cpp-beginners/thread658785.html
помогите решить задачу в с++ задача в приложенном файле !!
C++ STL . Обращение к 12 элементу вектора Добрый вечер, форумчане! Столкнулся вот с такой проблемой. Имеется вектор, заполненный числами, огромной длины. Но почему-то не хочет выводить 12й элемент... Вот соб-но код, пробую уже даже 2мя... http://www.cyberforum.ru/cpp-beginners/thread658771.html
Условие выполнения цикла C++
#include <iostream.h> void main() { char a; int r=1; cin>>a; if(a==r) { cout<<"test"<<endl; }
C++ Как добавить в трей значок?
Как добавить в трей значок?
C++ Составить программу, которая получает матрицу целых чисел А, размером m*n. http://www.cyberforum.ru/cpp-beginners/thread658755.html
Составить программу, которая получает матрицу целых чисел А, размером m*n. Если в исходной матрице все минимальные элементы нечетных строк сами нечетные, то программа создает новую матрицу. В новой...
C++ Задача первое большее a Доброго времени суток, помогите пожалуйста с задачей Дано действительное число а. Найти среди чисел 1, 1+1\2, 1+1\2+1\3,... первое большее а. Не могу совсем понять как это написать В отчаянии:... подробнее

Показать сообщение отдельно
Gepar
1177 / 533 / 20
Регистрация: 01.07.2009
Сообщений: 3,517
27.09.2012, 00:12
Написал тут свой велоиспед, можно красивше, но тогда будет менее понятно.
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
#include <iostream>
#include <string>
#include <list>
using namespace std;
 
int main()
{
    string str="String ,   !! with ?? text.";
    list<string> words;
    string toFind=" ,.;!?[]1234567890";
    size_t startPos=str.find_first_not_of(toFind);
    size_t endPos=str.find_first_of(toFind,startPos+1);
    if(startPos!=string::npos && endPos==string::npos)//видимо только одно слово
        words.push_back(str);
    while(startPos!=string::npos && endPos!=string::npos)
    {
        words.push_back(str.substr(startPos,endPos-startPos));
        startPos=str.find_first_not_of(toFind,endPos+1);
        endPos=str.find_first_of(toFind,startPos+1);
    }
    list<string>::iterator it=words.begin();
    while(it!=words.end())
        cout<<*it++<<endl;
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru