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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.70
GIGAbyte.
30 / 30 / 6
Регистрация: 27.08.2011
Сообщений: 148
#1

Изменение строки - C++

04.12.2011, 21:30. Просмотров 1493. Ответов 1
Метки нет (Все метки)

Есть некая строка с неизвестной длинной, надо чтобы после каждого второго символа вставлялся символ "*",
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <conio.h>
#include <iostream>
 
 
using namespace std;
 
int main()
{
    string st;
    st="All hi! my name is Sam. How are you?";
    for(int i=1; i<=sizeof(st); i+=2)
            st[i]="*";
    cout << st;
    getch();
}
Я понемаю что мой выше приведенный код полный бред, но это то чему я пока что научился
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.12.2011, 21:30     Изменение строки
Посмотрите здесь:

Получение переменных из строки, изменение строки, запись в файл - C++
Всем доброго времени суток. У меня есть текстовый документ, который содержит в себе пару сотен строк, которые выглядят следующим...

Изменение строки! - C++
У меня есть код. Нужно сделать чтобы я мог редактировать формулу,и по отредактированой формуле считало!!( #include &quot;StdAfx.h&quot; ...

Изменение строки в цикле - C++
Как в цикле строке *char присваивать разные значения, например &quot;коло1&quot; при первом проходе, &quot;коло2&quot; при втором, и т.д. char * temp = new...

Изменение размера строки - C++
На сколько я помню изменить размер строки можно при помощи библиотечной функции resize(); , но, я не помню как она реализуется. Вроде...

Изменение регистра строки - C++
Принимаем строку с клавиатуры. С пом. функции getline(). string clientName; getline(cin,clientName); Необходимо перевести всю строку...

Изменение строки символов - C++
Здравствуйте. Есть задание: заменить все точки в строке на многоточие(три точки), преобразование строки оформить как функцию. Стрингом...

Изменение строки символов - C++
В строке состоящей из алфавитно-цифровых символов, переместить все цифры в ее начало

Изменение строки в методе - C++
Добрый день. сделал функцию на получения полного пути из короткого но при выходе из функции возникает ошибка HEAP CORRUPTION DETECTED ...

Изменение цвета строки! - C++
доброго времени суток! вот условие задачи: Написать программу “Прыгающий шарик”. После запуска программы на экране должна отображаться...

Изменение строки в файле - C++
Доброго времени суток! Передо мной стоит такая задача - есть файл с именами, записанными построчно (Подобие базы даных). Например, мне...

Изменение строки текста в exe файле - C++
Допустим у меня есть откомпелированная программа, и в ней есть string'и, которые можно изменить через любой hex редактор . Но как в них...

Изменение строки из файла без перезаписи - C++
Привет, пробую без перезаписи файла заменить все буквы строки на большие. Пока что вышло только так: bool...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Mиxaил
533 / 438 / 37
Регистрация: 10.12.2009
Сообщений: 1,857
04.12.2011, 22:00     Изменение строки #2
Очень плохой способ, писал быстро:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <string>
 
int main()
{
    std::string s( "qwerty" );
    int count_insert = 0;
 
    for ( int index = 0; index < s.size(); index++ )
    {
        count_insert++;
        if ( count_insert == 2 )
        {
            s.insert( s.begin() + index + 1, '*' );
            count_insert = -1;
        }
    }
    std::cout << s << std::endl;
    return 0;
}
Добавлено через 9 минут
А лучше вот так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <string>
 
int main()
{
    std::string s( "qwerty" );
    int index = 1, count_insert = 0;
 
    while ( index < s.size() )
    {
        s.insert( s.begin() + index + 1, '*' );
        count_insert++;
        index += 2 + count_insert;
    }
 
    std::cout << s << std::endl;
    return 0;
}
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru