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

Поиск символа с конца строки - C++

Восстановить пароль Регистрация
 
SupermaNO
0 / 0 / 0
Регистрация: 08.02.2013
Сообщений: 24
15.10.2013, 00:15     Поиск символа с конца строки #1
Здравствуйте..

Как найти символ с конца строки ?

Например : предложение - простотестовый вариант.

И нужно определить позицию 2-ого пробела с конца...
(именно с конца, т.к. предложение могут быть большими и нужно с конца.)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11835 / 6814 / 769
Регистрация: 27.09.2012
Сообщений: 16,889
Записей в блоге: 2
Завершенные тесты: 1
15.10.2013, 00:22     Поиск символа с конца строки #2
Ну во-первых, какие строки?
А во-вторых, в чем проблема поиска с конца?
Folko
 Аватар для Folko
265 / 253 / 7
Регистрация: 27.09.2013
Сообщений: 877
Записей в блоге: 1
15.10.2013, 00:23     Поиск символа с конца строки #3
SupermaNO, делаете цикл от длины строки до 0, и считаете встречающиеся символы == ' ' (первое, что пришло в голову)
SupermaNO
0 / 0 / 0
Регистрация: 08.02.2013
Сообщений: 24
15.10.2013, 00:33  [ТС]     Поиск символа с конца строки #4
Цитата Сообщение от Croessmah Посмотреть сообщение
Ну во-первых, какие строки?
А во-вторых, в чем проблема поиска с конца?
1. Типа string
2. name_per.find(' '); ищет от начала.

На счёт варианта Folko - могли бы вы подсказать как преобразовать string в массив char[] ?
Folko
 Аватар для Folko
265 / 253 / 7
Регистрация: 27.09.2013
Сообщений: 877
Записей в блоге: 1
15.10.2013, 00:38     Поиск символа с конца строки #5
SupermaNO, а зачем преобразовывать? Со строками работать точно также как с массивами. s[4] укажет на 5 символ в строке
SupermaNO
0 / 0 / 0
Регистрация: 08.02.2013
Сообщений: 24
15.10.2013, 01:00  [ТС]     Поиск символа с конца строки #6
name_per.size();
name_per.lenght();

считывает кол-во до пробела...
Folko
 Аватар для Folko
265 / 253 / 7
Регистрация: 27.09.2013
Сообщений: 877
Записей в блоге: 1
15.10.2013, 01:12     Поиск символа с конца строки #7
SupermaNO, что то я не понял проблемы?

C++ (Qt)
1
2
3
4
5
6
7
8
9
QString str = "Текст строка пробелы и гуфы";
int t = str.toLength()-1;
int probelov = 0;
while (t >=0 && probelov < 2)
{
      if (str[t] == ' ') probelov++;
      t--;
}
cout << "Второй проблел" << t;
И еще вставить проверку, если вдруг в строке будет меньше пробелов
Вроде так
SupermaNO
0 / 0 / 0
Регистрация: 08.02.2013
Сообщений: 24
15.10.2013, 01:22  [ТС]     Поиск символа с конца строки #8
QString нужно без использования данного типа переменной.
(string,char)

Добавлено через 4 минуты
Пишу консольное приложение Win32 - C++ MVS 2010.
Folko
 Аватар для Folko
265 / 253 / 7
Регистрация: 27.09.2013
Сообщений: 877
Записей в блоге: 1
15.10.2013, 01:23     Поиск символа с конца строки #9
SupermaNO, QString - строковый тип в Qt. Работа со String происходит идентичным образом, только получение длины строки будет немного иным (по моему просто length или Length). Замените в моем примере QString на String
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.10.2013, 20:42     Поиск символа с конца строки
Еще ссылки по теме:

C++ Чтение до конца строки
Создать строку: с начало три символа первой строки, потом эти же три символа в обратном порядке C++
C++ Удаление символа перевода строки из самого конца файла

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

Или воспользуйтесь поиском по форуму:
SupermaNO
0 / 0 / 0
Регистрация: 08.02.2013
Сообщений: 24
15.10.2013, 20:42  [ТС]     Поиск символа с конца строки #10
Цитата Сообщение от SupermaNO Посмотреть сообщение
name_per.size();
name_per.lenght();

считывает кол-во до пробела...
...

Добавлено через 19 часов 17 минут
проблема ещё актуальна...
Yandex
Объявления
15.10.2013, 20:42     Поиск символа с конца строки
Ответ Создать тему
Опции темы

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