|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
13.07.2011, 22:46 | #1 |
Форумчанин
Регистрация: 30.01.2011
Сообщений: 231
|
С++|Поиск фрагмента строки
Добрый вечер! Вот тут попробовал написать программку, для поиска фрагмента строки, при компиляции ошибки не показывает, а при выполнении говорит что:"invalid string position". Не пойму где именно ошибся, вроде всё верно. Вот код:
Код:
Код:
Код:
а: нельзя\0 Ну вы меня поняли(надеюсь)). И если я прав, то как этого избежать?
Злостный анимешнег =^.^=
|
13.07.2011, 22:58 | #2 |
Форумчанин
Регистрация: 30.01.2011
Сообщений: 231
|
И ещё, в строку str_2, вместо кириллических символов, помещается абракадабра, хотя локаль вроде бы подключена, что нужно сделать что бы всё было нормально?
Злостный анимешнег =^.^=
|
14.07.2011, 00:37 | #3 |
Форумчанин
Регистрация: 30.01.2011
Сообщений: 231
|
После пошагового прогона программы, стало понятно, что ошибка выскакивает в этом фрагменте:
Код:
Злостный анимешнег =^.^=
|
14.07.2011, 00:57 | #4 |
Форумчанин
Регистрация: 11.07.2010
Сообщений: 914
|
устанавливай
1: Use Unicode Character Set 2: setlocale(LC_ALL,"Russian_Russia.86 6"); 3: вместо string,cin,cout используй wstring, wcin, wcout Последний раз редактировалось EUGY; 14.07.2011 в 00:59. |
14.07.2011, 01:09 | #5 | |
Форумчанин
Регистрация: 30.01.2011
Сообщений: 231
|
Цитата:
1.Текст стал невидимым. 2.Ошибка осталась(( Мне кажется, что всё таки я что-то не правильно делаю с функцией find().
Злостный анимешнег =^.^=
|
|
14.07.2011, 01:10 | #6 |
Форумчанин
Регистрация: 30.01.2011
Сообщений: 231
|
Вот текст ошибки:
Необработанное исключение в "0x7675b727" в "struct.exe": Исключение Microsoft C++: std:ut_of_range по адресу 0x003df5e4..
Злостный анимешнег =^.^=
|
14.07.2011, 01:22 | #7 |
Форумчанин
Регистрация: 11.07.2010
Сообщений: 914
|
у тебя str.find возвращает -1 из-за несоответствия кодировок.
Код:
|
14.07.2011, 01:59 | #8 |
Форумчанин
Регистрация: 30.01.2011
Сообщений: 231
|
Большое спасибо, программа теперь работает. Но вы не знаете, почему она корректно находит только слово "Казнить"? И ещё функция wcin.get() теперь не работает? Ответьте пожалуйста, если вас не затруднит.
Злостный анимешнег =^.^=
|
14.07.2011, 02:45 | #9 |
Форумчанин
Регистрация: 11.07.2010
Сообщений: 914
|
Я когда постил "исправленный" вариант, не анализировал написанный тобой код, а просто формально подошел к этому делу, т.к не понимаю, что ты хочешь вывести.
К чему этот цикл? Код:
Последний раз редактировалось EUGY; 14.07.2011 в 02:49. |
14.07.2011, 03:04 | #10 |
Форумчанин
Регистрация: 30.01.2011
Сообщений: 231
|
Этот цикл выводит найденное слово.
Злостный анимешнег =^.^=
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Поиск фрагмента изображения на картинке | banderas.antonio | C# (си шарп) | 3 | 07.05.2011 18:45 |
Замена фрагмента строки (Pascal) | Volk_xD | Помощь студентам | 2 | 17.12.2010 18:08 |
Поиск фрагмента по Lixtbox'у. | Pavarotti | Общие вопросы Delphi | 15 | 09.08.2010 12:25 |
Удаление фрагмента текста | Шурик | Общие вопросы Delphi | 0 | 31.05.2009 16:11 |
Поиск и выделение фрагмента в вордовском документе | Bobby | Общие вопросы Delphi | 1 | 17.04.2009 17:07 |