|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
10.10.2018, 14:40 | #1 |
Пользователь
Регистрация: 10.09.2018
Сообщений: 43
|
Помогите разобраться с указателями на символьные строки.
Добрый день. Есть такое задание:
Скриншот 2018-10-10 14_21_10.png Вот мой код: Код:
Скриншот 2018-10-10 14_23_55.png И вот такой получается вывод: Скриншот 2018-10-10 14_24_32.png Помогите, пожалуйста с, поиском и устранением ошибки. Из того, что я вижу: стандартная функция strchr() работает, так как "char *y" получает адрес символа. Очевидно, проблема в моей самодельной функции charfind - *x получает какое-то странное 0х68, ну и компилятор как бы намекает. Тогда я не могу понять, почему нельзя присвоить needtofind адрес st[i]. Разве я тут что-то нарушаю? Заранее спасибо. |
10.10.2018, 14:48 | #2 | |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,760
|
Что вы указателю присваиваете символ.
Ну так видно же, что вместо указателя код символа. Естественно на разыменовании падает. Цитата:
П.С. И поиск надо делать до конца строки, а не пока куда-нибудь не попадем. П.С.С. Если строку объявили в коде, то не стоит ее пытаться менять. |
|
10.10.2018, 15:00 | #3 |
Пользователь
Регистрация: 10.09.2018
Сообщений: 43
|
Понял!!
Сделал вот так: Код:
Скриншот 2018-10-10 14_54_53.png Только вопрос, зачем делать поиск до конца строки, если нам нужно найти всего лишь первое вхождение символа? |
10.10.2018, 15:06 | #4 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,760
|
А если символа не будет, когда и где остановитесь?
|
10.10.2018, 15:58 | #5 |
Пользователь
Регистрация: 10.09.2018
Сообщений: 43
|
И правда, цикл, выходит, не прервется. переделал:
Код:
Код:
0x7ffff6286c3f и 0x7ffff6286c30 и b kombom h bombomg Спасибо большое за помощь! |
10.10.2018, 16:01 | #6 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,760
|
А теперь передайте пустую строку...
|
10.10.2018, 16:15 | #7 |
Пользователь
Регистрация: 10.09.2018
Сообщений: 43
|
Эм...
Объявлял так Код:
Код:
Код:
Или, может быть, я не так вас понял? |
10.10.2018, 16:22 | #8 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,760
|
Ну это не совсем то... Объявите
Код:
|
10.10.2018, 16:37 | #9 |
Пользователь
Регистрация: 10.09.2018
Сообщений: 43
|
Код:
Код:
Выполнение программы повлекло: Segmentation fault (core dumped) |
10.10.2018, 16:41 | #10 |
Пользователь
Регистрация: 10.09.2018
Сообщений: 43
|
Переписал вот так, программа стала нормально завершаться, если передается нулевой указатель:
Код:
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Помогите разобраться с указателями. | Sinli | Общие вопросы C/C++ | 2 | 04.10.2018 22:47 |
Помогите пожалуйста разобраться с указателями? | седьмой | Общие вопросы C/C++ | 20 | 18.04.2017 07:26 |
помогите разобраться с указателями С++ | sasha_14-88 | Общие вопросы C/C++ | 1 | 07.12.2014 10:39 |
Помогите разобраться с указателями | igole | Общие вопросы C/C++ | 1 | 28.04.2013 16:47 |
Товарищи, помогите разобраться с указателями | scibern | Общие вопросы C/C++ | 7 | 11.01.2009 12:28 |