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

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

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

Заменить в строке все множественные вхождения заданного символа одним - C++

02.01.2012, 19:02. Просмотров 775. Ответов 2
Метки нет (Все метки)

Функция заменяет в строке все множественные вхождения заданного символа одним
для использование нелбходимо использовать

Указатели. Типизированные указатели.
Указатели и массивы.
Функции пользователя
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.01.2012, 19:02     Заменить в строке все множественные вхождения заданного символа одним
Посмотрите здесь:
Удалить все символы в строке, не являющиеся буквами и заменить множественные пробелы одним C++
Подчеркнуть в строке все вхождения заданного символа, если такие там есть C++
Заменить все первые левые вхождения символа “a” на 00, а все правые вхождения символа “a” на 11 C++
C++ Поиск в заданной строке последнего вхождения заданного символа
Удалить из строки все вхождения заданного символа C++
C++ Все последующие вхождения символа заменить на заглавные
Даны предложения. Заменить в нем все вхождения символа 'а' на '$' C++
C++ Как проверить в строке все вхождения символа?
В строке заменить каждый символ * числом, соответствующим номеру вхождения этого символа в строку C++
C++ Заменить все вхождения первого символа в массив на второй символ
C++ Из строки получить новую, выбросив все вхождения заданного символа (Работа со строками)
Как в переменной строкового типа заменить все вхождения одного символа на другой? C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
lemegeton
2923 / 1352 / 135
Регистрация: 29.11.2010
Сообщений: 2,725
02.01.2012, 19:29     Заменить в строке все множественные вхождения заданного символа одним #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
 
void removeMultiple(char *string, char c) {
  char *destination = string;
  while ((*destination = *string++))
    if (!(*string == c && *(string - 1) == c))
      ++destination;
}
 
int main(){
  char string[] = "  a  ssschhool    buss   ";
  removeMultiple(string, ' ');
  removeMultiple(string, 's');
  removeMultiple(string, 'h');
  std::cout << "'" << string << "'" << std::endl;
  return 0;
}
Irissha
0 / 0 / 0
Регистрация: 02.01.2012
Сообщений: 17
02.01.2012, 20:05  [ТС]     Заменить в строке все множественные вхождения заданного символа одним #3
предложение должно вводиться с клавиатуры )
Ответ Создать тему
Опции темы

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