170 похожих чатов

Всем привет.скажите,пожалуйта,я здесь получаю ошбку так как сначала создал указатели,которые

имеют свой адрес но при этом ни на какой адрес в памяти не указывают и потом попытался вывести значение которое хранится по тому несуществующему адресу?я правильно понимаю?

18 ответов

11 просмотров

Разыменование nullptr в Стандарте обозначено как UB (undefined behavoir, неопределённое поведение), то есть, что именно произойдёт от разыменования nullptr зависит от ОС, компилятора, архитектуры процессора и проч, и проч, но никак самим языком не определяется

Hvost 🦊♠️
Разыменование nullptr в Стандарте обозначено как U...

Если ты знаешь, как тот или иной код поведёт себя в определённой среде — можешь рассчитывать на такое поведение, но в целом UB в коде следует избегать любой ценой

Gleb-Maksimov Автор вопроса

а то что я сказал имеет смысл?

Hvost 🦊♠️
Если ты знаешь, как тот или иной код поведёт себя ...

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

Gleb-Maksimov Автор вопроса
Gleb Maksimov
просто интересно

nullptr — это специальный указатель на специальную область в памяти, которая определяет указатель как "нулевой"

Gleb-Maksimov Автор вопроса

То есть я впринцепе правильно понял,то есть я обращаюсь непонятно к чему и соответственно получаю только Богу известно что

Hvost 🦊♠️
Если ты знаешь, как тот или иной код поведёт себя ...

>> Если ты знаешь, как тот или иной код поведёт себя в определённой среде Это касается в лучшем случае implementation-defined behavior. В случае UB же мы по определению не знаем, как поведет себя код, ведь его поведение может меняться в зависимости от фазы Луны, погоды на Марсе или от геополитической обстановки на спутниках Сатурна

Пашечка
Есть ещё unspecified behavior, там тоже можно ;)

Вообще, я не уверен, что unspecified behavior гарантирует детерминированное поведение – да, гарантирует адекватное поведение, но при этом любое допустимое без гарантии повторяемости, поэтому я намеренно решил не упоминать его в своём сообщении

Ofee Oficsu
Вообще, я не уверен, что unspecified behavior гара...

Я, если честно, до сих пор путаю иногда все эти поведения, а грань между implementation-defined и unspecified так и не нащупал. Лично я вполне затачиваюсь в кодах на unspecified, потому что у меня очень контролируемое окружение: я точно знаю версии glibc, gcc, msvc toolset, и проч, с чем собирается наше ПО. Но путь рискованный, да.

Слава
А когда обновляете его, то что делаете?

Страдаем и тестируем :) Это происходит примерно раз в 3-5 лет.

Vlad
int* a = nullptr; std::cout << &*a << std::endl; т...

Ну, в note же упоминалось где-то, что индирекция через нулевой указатель – UB, а то, что этот пример страшно признавать таковым... :)

Похожие вопросы

Обсуждают сегодня

А как старый хаскел с новым стыковать ? потому как тут работает https://play.haskell.org/saved/C3xpMzcd, а вот тут https://stepik.org/lesson/7602/step/9?unit=1473 нет ошибка C...
Fedor
131
Вопрос я правильно понимаю что в коде newtype ArrowMap k v = ArrowMap { getArrowMap :: k -> Maybe v } getArrowMap есть функция типа k -> Maybe v, если да, то не понимаю задач...
Fedor
64
Как Вы считаете нормально ли в двадцатых годах 21 века в ВУЗах Российской Федерации обучать студентов работе с TASM? Не слишком ли это "архаично"? (Если оффтоп или флейм для э...
Spiker01
52
Продолжая диалог про свифт в проде – сейчас возник вопрос в активном наборе бекендеров. В основном в нашей компании мы фанаты Java Spring и полностью ей довольны. Однако найм ...
Guseyn
27
Кто-нибудь знает, как считается нагрузка на цпу? И что такое вообще "нагрузка на цпу"? вот, например, есть у цпу какой-то clock, настроенный на 3 ГГц --- Что значит "нагрузка...
Toideng
15
Можно ли написать свою библиотеку "socket" на каком либо языке ассемблера с нуля не используя сишние библиотеки ? Или это самоубийство ?
123🪐
15
Комрады, хотел уточнить. Проперть в OnDestroy юнита-хозяина по-прежнему доступна? И еще уточнение: finalization юнита наступает раньше или позже OnDestroy?
Ed Doc
48
Читаю сейчас [нет, уже больше не читаю!] курсовую о Булгакове, написанную, похоже, с помощью ChatGPT. Это удивительный психоделический опыт. Текст в основном написан в стиле б...
✨ Uni [🌊 В отпуске]
1
{!! $modx->runSnippet( 'multiTV',[ 'tvName'=>'slider-main1', 'docid'=>'[*id*]', 'tplConfig'=>'', 'display'=>'4', 'offset'=>'0', 'rows'=>'all', 'ra...
Роман С
4
Всем привет! поделитесь, пож-та, как кто дебажил / решал проблему с 504 Time out ошибкой от nginx, когда стучишься на свой vapor сервер? в логах /var/log/nginx/error.log е...
Paul
24
Карта сайта