Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.09.2012, 14:01   #1
monnie
 
Регистрация: 20.05.2011
Сообщений: 4
По умолчанию удаление дублирующихся символов

Очень хотелось бы получить помощь по такому вопросу:

Суть такова - нужна простая функция на С++, удаляющая последовательно повторяющиеся символы в строке.

Всё бы ничего, да только использовать библиотечные функции ( например, начинающиеся на stl, std) препод запретил.

От данного заявления я потерял голову и начал писать всякий бред.
Примеры моих размышлений, мне даже скидывать стыдно.

Уже пробовал по разному, и вообще пока плохо представляю принцип. Понимаю что без какого-либо кода мой пост удалят, но понадеюсь на удачу.
Ну не печатать же мне, как я указываю переменные, в конце концов.
monnie вне форума Ответить с цитированием
Старый 26.09.2012, 16:27   #2
Somebody
Участник клуба
 
Регистрация: 08.10.2007
Сообщений: 1,185
По умолчанию

Код:
void unique(char* s)
{
	char *dst = s, *src = s;
	while (*src++ != '\0')
	{
		if (*src != *dst)
			*++dst = *src;
	}
}
Или даже
Код:
void unique(char* s)
{
	for (char *dst = s, *src = s; (*dst = *src) != '\0'; dst += src[0] != src[1], src++);
}
Somebody вне форума Ответить с цитированием
Старый 26.09.2012, 17:32   #3
monnie
 
Регистрация: 20.05.2011
Сообщений: 4
По умолчанию

Цитата:
Сообщение от Somebody Посмотреть сообщение
Код:
void unique(char* s)
{
	char *dst = s, *src = s;
	while (*src++ != '\0')
	{
		if (*src != *dst)
			*++dst = *src;
	}
}
Или даже
Код:
void unique(char* s)
{
	for (char *dst = s, *src = s; (*dst = *src) != '\0'; dst += src[0] != src[1], src++);
}
Большое спасибо. Рад что добрые люди есть .

Кстати, просто для справки, у меня похоже очень было на 1 вариант, но выдавало ошибку, поэтому я стёр.

Последний раз редактировалось monnie; 26.09.2012 в 17:37.
monnie вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Удаление символов Elegance1 Помощь студентам 1 11.05.2012 18:16
Удаление дублирующихся строк в TStringList Alex Cones Общие вопросы Delphi 4 28.05.2010 20:33
Быстрое удаление дублирующихся слов :). Utkin Общие вопросы Delphi 21 01.02.2010 08:25
Удаление символов MURAD Общие вопросы C/C++ 3 19.08.2007 01:25