С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
19 / 19 / 6
Регистрация: 10.01.2011
Сообщений: 241
1

Класс string

02.03.2013, 13:30. Показов 589. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день, друзья.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <string>
 
using namespace std;
 
int main (void)
{
    string obj = "one two three.";
 
    int x = obj.find(' ');  
    
    while( x < obj.size() )
    {
        obj.replace(x, 1, "/");
        x = obj.find( ' ' );
    }
 
    cout << obj << endl;    
 
    return 0;
}
Почему она работает? Как x "становиться" >= obj.size() ? Как я понимаю - если знак не найден - функция obj.find() возвращает -1 ...
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.03.2013, 13:30
Ответы с готовыми решениями:

Здравствуйте! Создал класс std::string. Не создается объкт типа string... Подскажите в чем причина?
#include &lt;stdlib.h&gt; #include &lt;iostream&gt; #include &lt;string.h&gt; //using namespace std; class...

Реализовать пользовательские типы: класс Person и класс String
1)Разработать класс Person, который содержит соответствующие члены для хранения: имени, ...

Класс <string>
Подскажите пожалуста, как переписать из строки str первые n байтов в строку str1, а остальные в...

Класс String
вот файл реализации String::String() //конструктор на 80 { size = 80; str = new char; ...

2
127 / 125 / 16
Регистрация: 03.07.2011
Сообщений: 354
02.03.2013, 13:36 2
string::find(...) возвращает string::npos, если подстрока не найдена. выведите string::npos и поймете почему)
1
19 / 19 / 6
Регистрация: 10.01.2011
Сообщений: 241
02.03.2013, 14:07  [ТС] 3
прикольная штуковина!

Добавлено через 11 минут
Расширив диапазон х - мы увидим, что возвращает find() при отсутствии искомого знака:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <string>
 
using namespace std;
 
int main (void)
{
    string obj = "one two three.";
 
   unsigned int x = obj.find(' ');   //вот и unsigned пригодился
    
    while( x < obj.size() )
    {
        obj.replace(x, 1, "/");
        x = obj.find( ' ' );
    }
 
    cout << "x = " << x << '\n' << obj << endl;    //теперь на экране x равен не -1, а 4294967295
 
    return 0;
}
0
02.03.2013, 14:07
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.03.2013, 14:07
Помогаю со студенческими работами здесь

класс String
//main #include &lt;iostream&gt; #include &quot;header.h&quot; const int ArSize = 10; const int MaxLen =81;...

Класс String
Написать программу, которая считывает текст из файла и выводит его на экран, меняя местами каждые...

Класс String
добрый день. У кого-то есть программа которая создаёт класс String – строку, используя динамическую...

Класс String
Всем привет, помогите пожалуйста. Ошибка на этапе выполнения. Скомпилируйте программу, с помощью...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru