![]() |
|
Модераторы: bsa |
![]()
|
|
| stat007 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 521 Регистрация: 9.10.2008 Репутация: -2 Всего: -4 |
Поскажите как удалить ВСЕ пробелы в строке?
Напимер: Enter string: mama mila ramu ! ! Что бы выводила такой результат: mamamilaramu!! |
|||
|
||||
| Andrey44 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1501 Регистрация: 4.12.2006 Где: На работе Репутация: 2 Всего: 26 |
stat007, а покажи как делаешь ты.
-------------------- ????? ??, ??????? ?????. |
|||
|
||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 79 Всего: 250 |
подробности по коду можно найти здесь : http://www.cplusplus.com/reference/algorithm/ http://www.cplusplus.com/reference/algorithm/remove_if.html http://www.cplusplus.com/reference/string/string/ Это сообщение отредактировал(а) mes - 18.2.2009, 11:52 |
|||
|
||||
| Djinn |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 250 Регистрация: 18.5.2007 Репутация: нет Всего: 1 |
mes, + тебе, сенкс, интересные ф-и... не юзал еще
|
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
Почитай книжку по стандартным библиотекам Си и Си++. Много интересного узнаешь. |
|||
|
||||
| stat007 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 521 Регистрация: 9.10.2008 Репутация: -2 Всего: -4 |
благодарю.. спасибо.
теперь такой вопрос: Как разделить строку на пробулы после каждой буквы: т.е. например: Enter string: Hello World! Должно вывести: H e l l o W o r l d ! Модератор: Пожалуйста, один топик - один вопрос. Это сообщение отредактировал(а) bsa - 19.2.2009, 12:10 |
|||
|
||||
| cutwater |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 592 Регистрация: 24.6.2008 Репутация: 2 Всего: 10 |
stat007, это же элементарно! Вы читали хотя бы одну книгу по С++?
|
|||
|
||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 79 Всего: 250 |
неужели самому попробовать для начала трудно, и выложить хотя бы неработающий код для исправления.
если всё будут решать за Вас Вы так никогда ничему и не научитесь. в ссылках из предыдущего поста функций (с их полным описанием и примерами) предостаточно, чтоб решить Вашу задачу. вначале удалить лишние пробелы, а после вставить пробел после каждой буквы например так:
одно из условий можно вынести за цикл (т.е перед циклом проверить что в строке есть хотя бы один символ) - но это уж сами.. Это сообщение отредактировал(а) mes - 18.2.2009, 22:07 |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
|
|||
|
||||
| afanp |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 147 Регистрация: 25.11.2008 Репутация: нет Всего: нет |
вотъ |
|||
|
||||
| mes |
|
||||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 79 Всего: 250 |
65,90, 97, 122 - не кажется ли Вам что эти цифры не несут в себе смысла, да и немного напрягают программиста при чтении кода ? имхо так будет посимпатичнее :
а также это не совсем соответствует заданию, так как учитываются только символы английского алфавита... Это сообщение отредактировал(а) mes - 19.2.2009, 17:59 |
||||
|
|||||
| Kurganec |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 6.6.2008 Где: СПБ Репутация: нет Всего: нет |
кажется к тому же программа может работать не верно на некоторых платформах. |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
тогда уж лучше:
|
|||
|
||||
| afanp |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 147 Регистрация: 25.11.2008 Репутация: нет Всего: нет |
хм, большое спасибо за советы. А не могли бы Вы пояснить немного что именно происходит
s.erase(std::remove(s.begin(), s.end(), ' '), s.end()); тут ? s.erase это функция удаления каких то символов из строки,я так понимаю, а вот std::remove? |
|||
|
||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 79 Всего: 250 |
а пройти по вышеупомянутой ссылке не пробовали ?
там найдете и описание и условный вариант реализации и пример использования Это сообщение отредактировал(а) mes - 19.2.2009, 22:17 |
|||
|
||||
| afanp |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 147 Регистрация: 25.11.2008 Репутация: нет Всего: нет |
английский хромает
|
|||
|
||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 79 Всего: 250 |
так там и без английского можно вполне справиться..(он не только у Вас хромает и все равно разбираются) главное попытаться
там и код самой функции приведен , да к тому же и в примере в комментах показан результат работы. Это сообщение отредактировал(а) mes - 19.2.2009, 22:39 |
|||
|
||||
| afanp |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 147 Регистрация: 25.11.2008 Репутация: нет Всего: нет |
вы тут пока писали, могли бы уже 100 раз объяснить
|
|||
|
||||
| cutwater |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 592 Регистрация: 24.6.2008 Репутация: 2 Всего: 10 |
Ну как бы google и RTFM никто не отменял. Позитивно если начинающий программист сам ищет ответ на вопрос а не ждет пока ему его преподнесут. это положительно на опыте сказывается.
|
|||
|
||||
| stat007 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 521 Регистрация: 9.10.2008 Репутация: -2 Всего: -4 |
Cпасибо за помошь... Тема заврыта.
|
|||
|
||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 79 Всего: 250 |
могли бы.. но 1. пришлось бы писать то, что уже есть по ссылке.. а зачем ?! 2. тогда Вы так и не научитесь пользоваться общедоступной информацией и будете зависить от чьего то объяснения. однако если настаиваете, то: функция remove удаляет все элементы удовлетворяющие условию в указанном диапазоне и возвращает итератор на конец новой последовательности, но не изменяет размер контейнера. Для удаления получившегося мусора используется функция erase, которой передается диапозон от "нового" конца до "реального" конца контейнера. P.S. может хоть теперь , чтоб понять объяснение попробуете воспользоваться тем что под ссылкой Это сообщение отредактировал(а) mes - 19.2.2009, 23:55 |
|||
|
||||
| Dmi3ev |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1698 Регистрация: 28.11.2007 Репутация: 13 Всего: 41 |
А я бы посоветовал stat007-у самому сначала поработать с символами, не используя наворотов ваще, типа этого что-то:
что-то вроде... не судите строго... я просто про то, что сначала лучше таким макаром работать со строками, а не лезть сразу в готовое, ничего не понимая, даже пусть немного криво, но сам... а потом придет и рациональность, и шарм какой-нибудь, и ... опыт, опыт, опыт... -------------------- |
|||
|
||||
| bsa |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
|
||||
|
|||||
| afanp |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 147 Регистрация: 25.11.2008 Репутация: нет Всего: нет |
mes, спасибо
|
|||
|
||||
![]()
|
| Правила форума "C/C++: Для новичков" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |