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

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

Войти
Регистрация
Восстановить пароль
 
Noobass
0 / 0 / 0
Регистрация: 15.10.2012
Сообщений: 100
#1

Замена символов в строке - C++

22.11.2012, 20:21. Просмотров 429. Ответов 1
Метки нет (Все метки)

Надо написать программу, которая будет считывать строку, и заменять определенный символ(пользователь сам указывает, какой именно) на другой (который тоже указывает пользователь).
Вот код:
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
#include <iostream>
using namespace std;
int replace(char * str,char c1,char c2);
int main()
{
    char *wail="rubiroid";
    char ch1,ch2;
    cout<<"Vvedite symbol, kotoriy nugno zamenit': ";
    cin>>ch1;
    cout<<"Vvedite symbol, na kotoriy zamenat': ";
    cin>>ch2;
    int total=replace(wail,ch1,ch2);
    cout<<"Obshee 4islo zamen: "<<total<<"\n";
    system("pause");
    return 0;
}
int replace(char * str, char c1, char c2)
{
    int count=0;
    while(*str) {
        if(*str==c1)    {
            *str=c2;
        count++;
        }
        str++;
    }
    return count;
}
Не могу понять почему, но прога не пашет. Дает ввести символы, и потом крашится. Не подскажите, где моя ошибка?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.11.2012, 20:21     Замена символов в строке
Посмотрите здесь:

Замена символов в строке - C++
Каким образом выполнять замену в строке. Очень много читал но ничего не понял. Есть какой нибудь простой пример?

Замена символов в строке - C++
В общем, я не понимаю логики программирования, потому что я идиот :) Задание: Ввести строку, символ который заменить и символ на который...

Замена символов в строке - C++
Не получается сделать замену символов. Если в строке есть буква &quot;H&quot; мне нужно заменить её на &quot;HOH&quot;. Вот код: #include &lt;iostream&gt; using...

Замена символов в строке с while - C++
Здравствуйте. Подскажите,пожалуйста,по задаче: Используйте серийный оператор for для замены всех символов строки на X. Как эти символы...

Замена символов в строке - C++
Здраствуйте! У меня такая задачка: Дано натуральное число n и символы s1,s2..sn.заменить каждую точку многоточием. Заранее благодарен! ...

Замена символов в строке - C++
Здравствуйте!!! Помогите пожалуйсто решить задачку. Есть текстовый файл. Необходимо: - открыть файл - скопировать содержание...

замена символов в строке - C++
Как заменить первый символ в строке &quot;k&quot; на &quot;c&quot; ? И последний &quot;с&quot; на &quot;k&quot; ? Вообще ума не приложу, помогите...

Замена в строке символов - C++
&quot;Заменить в строке все вхождения 'abc' на 'xy', а 'mm' на '1234'&quot;. Буду благодарна за оказанную помощь. проблема в том,что я не знаю как...

Замена символов в строке - C++
Помогите решить задачу. Дана строка. Нужно заменить символ &quot;s&quot; на &quot;svb&quot;.

Замена символов в строке - C++
Доброго времени суток. Есть такой код. char text=&quot;hello world&quot;; Как заменить слово &quot;world&quot; в этой строке на слово &quot;Mike&quot;. Искал в...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Vourhey
Почетный модератор
6477 / 2252 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
22.11.2012, 20:31     Замена символов в строке #2
C++
1
char *wail="rubiroid";
Эта строка только для чтения. Выдели динамически память и скопируй туда свою строку, потом меняй.

Добавлено через 1 минуту
Ну либо на стеке располагай
Ответ Создать тему
Опции темы

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