С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
2 / 2 / 2
Регистрация: 22.05.2013
Сообщений: 39

Сравнение переменных типа стринг

15.12.2014, 21:22. Показов 934. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите разобраться что не так в программе. Сама программа большая, работает хорошо, но непонятный момент примерно состоит в следующем:
Есть класс Simvol в котором метод сравнивает переменную поля string объекта этого класса с аргументом типа string, если метод находит совпадение, то возвращает true иначе false.

Класс:
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
class Simvol
{
private:
    string simvol;
    int kod[N];
    int top;
public:
    bool sravnenie(string ss)
    {
        int n = ss.find_first_of(simvol);
        return (n >= 0) ? true : false;
    }
};
Возвращая true при сравнении с переменной svar1 оператор object[m].get_kod(1); помещает 1 для определенного объекта в стек, метод которого тоже есть в классе Simvol, если true возвращает при сравнении с svar2 то для него в стек помещается 0.

Цикл сравнения для каждого объекта класса Simvol:
C++
1
2
3
4
5
6
7
8
9
10
11
    for (int m = 0; m < count2; m++)
        {
            if (object[m].sravnenie(svar1)==true)
            {
                object[m].get_kod(1);
            }
            else if (object[m].sravnenie(svar2) == true)
            {
                object[m].get_kod(0);
            }
        }
Проблема в том что в последний элемент ничего не записывается, он пуст и при выводе выводит не (например) 0 как должно быть а - 858993460, что это значит и как это можно исправить?

Добавлено через 7 минут
Опять как только написал на форум, сразу понял в чем ошибка). Ошибка была при выводе.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
15.12.2014, 21:22
Ответы с готовыми решениями:

Сравнение нескольких переменных типа стринг
Есть код, в котором нужно сравнивать 3 временных промежутка, и по результатом сравнения выводит, как не странно, результат. Все бы хорошо,...

Сравнение переменных структурного типа
Всем доброго времени суток, объяснить пожалуйста, как можно сравнить переменную типа структуры с переменной стандартного типа библиотеки...

Сравнение двух переменных типа string
Я решаю одну задачу, в ней нужно сделать бинарное дерево поиска, но суть не в это. При поиске по параметрам типа string результат совсем не...

2
Эксперт PHP
 Аватар для Kerry_Jr
3106 / 2591 / 1219
Регистрация: 14.05.2014
Сообщений: 7,236
Записей в блоге: 1
15.12.2014, 21:23
Цитата Сообщение от Пацан_ Посмотреть сообщение
0 как должно быть а - 858993460
Мне Ваш цикл абсолютно не нравится. А что вставляется, если ни в первой, ни во второй строке не символа? Видимо, ничего, и стек, видимо, изначально не инициализирован никакими значениями, поэтому и выводится мусор.
1
2 / 2 / 2
Регистрация: 22.05.2013
Сообщений: 39
15.12.2014, 21:28  [ТС]
Спасибо, но я уже разобрался. Все работает хорошо, ошибка была из-за невнимательности при выводе стеков каждого объекта в конце программы.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
15.12.2014, 21:28
Помогаю со студенческими работами здесь

Не получается сравнить переменную типа стринг
Скинул весь код, раздел программы где код не работает пометил комментарием. #include &lt;iostream&gt; using namespace std; int...

Как считать слово из входного файла в лист типа стринг
Как считать допустим целую фамилию из входного файла в лист типа стринг, можно ли это сделать не посимвольно?

Сравнение нескольких переменных
Есть слегка странное задание. Есть 10 отдельных переменных(v1, v2, v3, ...) типа int, которым присвоены случайные значения от 0 до...

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

Сравнение текстовых переменных
Здрасте,как сделать сравнение по числам и словам? p.s. туплю,не пойму как. Задание: if (имя1 = число) имя2 = имя3++; else exit; ...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru