|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
07.11.2017, 09:23 | #1 |
Пользователь
Регистрация: 15.10.2017
Сообщений: 12
|
аналог программы strstr
Скажите,какие в этой программе ошибки?
Программа-аналог функции strstr. Предполагалось сделать так,чтобы после сравнения строк с ограничением количества срав символов(strncmp) в случае совпадения первых символов возвращалось P,в случае несовпадения p указывало на второй символ в первой строке,и сравнение уже шло по первой строке без первого элемента и снова в случае совпадения возвращалось р. Код:
Код программы нужно выделять (форматировать) тегами [CODE] (читать FAQ) Модератор Последний раз редактировалось Serge_Bliznykov; 07.11.2017 в 09:42. |
07.11.2017, 10:17 | #2 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,772
|
1. язык регистрозависимый, Char и char - это разные вещи
2. вторую строку не проверили на nullptr 3. в качестве кол-ва сравниваемых символов лучше брать минимум из двух размеров 4. зачем вы сравниваете указатель с размером? |
07.11.2017, 15:31 | #3 |
Пользователь
Регистрация: 15.10.2017
Сообщений: 12
|
Спасибо,а если так:
Код:
|
07.11.2017, 15:57 | #4 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,772
|
Объясните, что вы хотите сделать циклом?
|
07.11.2017, 16:12 | #5 |
Пользователь
Регистрация: 15.10.2017
Сообщений: 12
|
Мне нужен цикл,с помощью которого происходит сравнение,если совпадения есть ,то возвращаем р,если нет-р указывает на втрой символ в первой строке,при этом первый символ в первой строке убирается и сравнение идет уже второй строки с первой,котораябез первого символа и тд
|
07.11.2017, 16:20 | #6 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,772
|
1. Разбираемся с условие цикла:
раз сравнивается сдвигаемый указатель по первой строке, то по крайней мере надо убедиться, что этот указатель не вышел за границу этой строки - как с этим поможет сравнение размера всей строки с 0? 2. Раз первый символ у вас "убирается", то либо его надо убирать, либо сравнивать с новой позиции, а у вас всегда идет одно и то же сравнение всех строк. 3. Код:
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Аналог программы Windows Type | CROWN | Помощь студентам | 7 | 18.06.2014 15:08 |
Написать аналог программы Everest на C++ Builder | Серёжа Одиночкин | C++ Builder | 2 | 16.12.2013 15:23 |
Разработка программы, аналог бизнес-органайзера, Delphi. | keller47 | Фриланс | 1 | 30.05.2013 20:17 |
Аналог программы... | Volt | Фриланс | 4 | 06.02.2010 03:18 |