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

string iterator - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ 3. Написать функцию, которая обеспечивает ввод с клавиатуры целого положительного числа. Функция из набора знаков должна возвращать только целые полож http://www.cyberforum.ru/cpp-beginners/thread799661.html
Написать функцию, которая обеспечивает ввод с клавиатуры целого положительного числа. Функция из набора знаков должна возвращать только целые положительные числа. Кто поможет огромное СПАСИБО.
C++ Функции. Написать функцию решения квадратного уравнения Написать функцию решения квадратного уравнения; Кто поможет огромное СПАСИБО. http://www.cyberforum.ru/cpp-beginners/thread799648.html
C++ сортировка по убыванию с использованием указателя
Все перепробовала, у меня никак не получается сделать сортировку по убыванию с указателем. Можете дописать часть кода? #include<iostream> #include <math.h> #include<stdlib.h> #include <ctime> #include <algorithm> #include <functional> #include <cstdlib> using namespace std;
Исправьте ошибку string subscript out of range C++
#include <iostream> #include <string> #include <vector> using namespace std; int main () { string s = "222/2"; string* s2 = new string ; string delimiters = "+ * / - ( )";
C++ оператор-друг для нешаблонного класса, вложенного в шаблонный http://www.cyberforum.ru/cpp-beginners/thread799605.html
Привет! Суть проблемы в заголовке темы. Пример того, что мне надо. template <class T> class A { public: class B {
C++ [Теория] Преобразование Struct * <=> Type * Здравствуйте, Господа и Дамы. Немного теории, коротко и без зевоты. Итак, есть структура с однотипными переменными. struct coordinat3f{ float x, y, z; }; coordinat3f coord; и есть указатель на переменные того же типа float * f; подробнее

Показать сообщение отдельно
The_bolT
70 / 70 / 1
Регистрация: 22.01.2013
Сообщений: 231
03.03.2013, 19:18  [ТС]     string iterator
Вы были правы. Так программа работает, но когда последний символ стоит цифра то программа падает. Как это исправить?
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
25
#include <iostream>
#include <string>
 
using namespace std;
 
int main ()
{
    string s = "1234A77FF3j";
    string tmp = "";
    string::iterator it = s.begin();
    bool for_it = true;
    do
    {
        if(*it>48 && *it<57)
            while((*it>48 && *it<57)){
                tmp += *it;
                it++;
            }
            tmp+=" ";
        ++it;
    }while(it != s.end());
    cout<<tmp;
    system("pause");
    return 0;
}
Добавлено через 14 минут
С этим разобрался, но возникла другая проблема: почему строка tmp_for_symbol всегда пуста?
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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#include <iostream>
#include <string>
 
using namespace std;
 
int main ()
{
    string s = "1234A77B3";
    string tmp_for_digit = "";
    string tmp_for_symbol = "";
    string::iterator it = s.begin();
    bool for_it = true;
    do
    {
        if(*it>48 && *it<57)
            while((*it>48 && *it<57)){
                tmp_for_digit += *it;
                it++;
                if(it == s.end()){
                    for_it = false;
                    break;
                }
            }
        else{
            while(*it == 'A' || *it == 'B'){
                tmp_for_symbol += *it;
                it++;
                if(it == s.end()){
                    for_it = false;
                    break;
                }
            }
        }
        tmp_for_symbol += " ";
        tmp_for_digit+=" ";
        if(for_it == true)
            ++it;
    }while(it != s.end());
    cout<<tmp_for_digit<<endl<<tmp_for_symbol;
    system("pause");
    return 0;
}
 
Текущее время: 07:58. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru