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

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

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

Показать сообщение отдельно
ForEveR
Модератор
Эксперт С++
7958 / 4720 / 319
Регистрация: 24.06.2010
Сообщений: 10,525
Завершенные тесты: 3
27.09.2012, 14:51     string::npos задать корректное условие
AnreyKazakov, Зачем удалять гланды через задницу?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <string>
#include <list>
#include <iostream>
 
int main()
{
   using namespace std;
string line;
list<string> all;
string::size_type k=0;
while(getline(cin,line)){
    do{all.push_back(line.substr(k,(line.find(" ",k)==string::npos?line.size()-k:line.find(" ",k)-k)));
      }while(string::npos!=(k=line.find(" ",k))++);
    cout << "processed" << std::endl;
}
}
У меня все работает. Входные данные пожалуйста скажите. Пишет ли processed? Для того, чтобы закончить первый цикл нужно послать EOF.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru