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

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

Восстановить пароль Регистрация
 
Noobass
0 / 0 / 0
Регистрация: 15.10.2012
Сообщений: 100
22.11.2012, 20:21     Замена символов в строке #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++
Замена символов в строке C++
C++ Замена символов в строке
Замена символов в строке C++
Замена символов в строке C++
C++ Замена символов в строке с while

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

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

Добавлено через 1 минуту
Ну либо на стеке располагай
Yandex
Объявления
22.11.2012, 20:31     Замена символов в строке
Ответ Создать тему
Опции темы

Текущее время: 01:07. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru