![]() |
Модераторы: bsa |
![]() ![]() ![]() |
|
Phoenix13 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 31 Регистрация: 26.4.2009 Репутация: нет Всего: нет |
Как сделать так чтобы инструкция if проверяла не конкретную по счёту букву а все сообщение на наличие в ней искомой буквы?
Может как-то через цикл for это можно сделать? |
|||
|
||||
bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
можно конечно, если хочется изобрести велосипед. А если не хочется, то можно использовать функции strchr() (для си строк) и std::find или std::string::find.
Кстати, подключать одновременно string.h и cstring смысла нет никакого, так как cstring сам подключает string.h и заворачивает стандартные функции в пространство имен std. ты используешь, setlocale, но у тебя нет #include <clocale>. |
|||
|
||||
Phoenix13 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 31 Регистрация: 26.4.2009 Репутация: нет Всего: нет |
Я новичек, если можно пример.
![]() И насчет Setlocate, почему cout выводит слова на русском в консоли, а когда я вписываю на русском что-либо, то он возвращает иероглифы? Можно ли это исправить? |
|||
|
||||
bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
пример чего? не знаешь как вызывать функцию с двумя параметрами, один из которых строка, а второй символ? Или ты вообще не знаешь, сколько у нее параметров? Гугл рулит!
|
|||
|
||||
Phoenix13 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 31 Регистрация: 26.4.2009 Репутация: нет Всего: нет |
С функциями незнаком((
|
|||
|
||||
Ozerich |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 164 Регистрация: 2.8.2009 Где: Минск, Беларусь Репутация: 4 Всего: 5 |
Вот тебе самописная функция поиска и цикл for
--------------------
C++(STL) / DHTML(CSS) / Javascript / PHP Developer |
|||
|
||||
Phoenix13 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 31 Регистрация: 26.4.2009 Репутация: нет Всего: нет |
Ozerich
, спасибо!! ![]() find_letter это название функции которая начнёт выполняться в if.
Как работает само (message,later)? Я имею ввиду и алгоритм и синтаксис. |
|||
|
||||
Ozerich |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 164 Регистрация: 2.8.2009 Где: Минск, Беларусь Репутация: 4 Всего: 5 |
это параметы которые передаются в функцию. 1-ый параметр это само сообщение, 2-ой - буква. Функция возвращает true, если буква содержится в сообщение, иначе возвращает false --------------------
C++(STL) / DHTML(CSS) / Javascript / PHP Developer |
|||
|
||||
Phoenix13 |
|
||||||
Новичок Профиль Группа: Участник Сообщений: 31 Регистрация: 26.4.2009 Репутация: нет Всего: нет |
А здесь
И ещё это не очень аонятно
Explain, please) |
||||||
|
|||||||
Ozerich |
|
||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 164 Регистрация: 2.8.2009 Где: Минск, Беларусь Репутация: 4 Всего: 5 |
Это уже сама функция. Здесь : if(find_letter(message,letter)) функция вызывается а тут : bool find_letter(string &s, char a) идет описание её(что она должна делать)
Проходим циклом по каждому символу в строке и во второй строке условие : Если текущий символ равен тому который мы ищем то функция завершается успешно --------------------
C++(STL) / DHTML(CSS) / Javascript / PHP Developer |
||||
|
|||||
Phoenix13 |
|
||||
Новичок Профиль Группа: Участник Сообщений: 31 Регистрация: 26.4.2009 Репутация: нет Всего: нет |
А можно чуть по подробнее? Про то что циклом проходим понятно.
Непонятно как работает это:
и вот это:
|
||||
|
|||||
Ozerich |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 164 Регистрация: 2.8.2009 Где: Минск, Беларусь Репутация: 4 Всего: 5 |
i < s.size();
значение переменной i меньше длины текста (string &s, char a) это параметры для функции. первый параметр s типа string(строка)(амперсанд можно убрать) и второй параметр а типа char(символ) --------------------
C++(STL) / DHTML(CSS) / Javascript / PHP Developer |
|||
|
||||
Phoenix13 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 31 Регистрация: 26.4.2009 Репутация: нет Всего: нет |
как я понимаю size() стандартная функция, которая определяет длину строки?
|
|||
|
||||
Ozerich |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 164 Регистрация: 2.8.2009 Где: Минск, Беларусь Репутация: 4 Всего: 5 |
Да. Так и есть. Но эта функция только в STL строках ![]() В С-строках функция strlen(s) Это сообщение отредактировал(а) Ozerich - 12.3.2010, 13:20 --------------------
C++(STL) / DHTML(CSS) / Javascript / PHP Developer |
|||
|
||||
Phoenix13 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 31 Регистрация: 26.4.2009 Репутация: нет Всего: нет |
А в чём разница между строками С и STL
![]() |
|||
|
||||
![]() ![]() ![]() |
Правила форума "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. |