|
0 / 0 / 0
Регистрация: 20.11.2022
Сообщений: 20
|
|
Почему при выходе за пределы массива мы получаем «мусор», а не нули?22.11.2022, 09:57. Показов 11187. Ответов 49
Метки нет (Все метки)
Почему при выходе за пределы массива мы получаем «мусор», а не нули?
Прошу объяснить подробно, почему, как и с чем это связано. Домашнюю работу задали на курсах)
0
|
|
| 22.11.2022, 09:57 | |
|
Ответы с готовыми решениями:
49
Почему работает программа при выходе за пределы массива? Ошибка сегментации при выходе за пределы динамического массива
|
|
631 / 526 / 104
Регистрация: 05.08.2022
Сообщений: 2,810
|
|||
| 23.11.2022, 16:03 | |||
|
Это чисто про аппаратный уровень если говорить. Хотя проблема в самом деле имеет очень много аспектов. Про программные здесь отлично написано, особенно в посте TheCalligrapher. Про многие моменты из написанного им я бы и не сообразил. Я как-то по микросхемкам больше ![]() А с точки зрения чисто С++ это всё и вовсе UB, тоже совершенно правильно подмечено. Хотя это UB (которое все же больше теоретическое в том смысле, что существует только на уровне C++) в реальности не мешает нам в наблюдать вполне конкретный "мусор", причем в каких-то конкретных условиях конкретных сборок отдельные конкретные значения того или иного "мусора" вполне можно даже объяснить и они даже будут повторяемы от раза к разу. Т.е. как бы уже и не "случайный мусор".
0
|
|||
|
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,822
|
||
| 23.11.2022, 18:28 | ||
|
Много раз я уже здесь это говорил, но люди все равно продолжают уравнивать UB с падением программы или какими-то другими конкретными спецэффектами. Еще раз: UB - это не спецэффекты.
0
|
||
|
631 / 526 / 104
Регистрация: 05.08.2022
Сообщений: 2,810
|
||
| 24.11.2022, 10:48 | ||
|
Проблема лишь в дизайне языка. Вообще это огромный парадокс: почему язык с постоянно растущим списком UB остаётся очень популярным. Я примерно даже знаю ответ.
0
|
||
|
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,822
|
|
| 24.11.2022, 11:46 | |
|
0
|
|
|
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
|
||
| 24.11.2022, 12:53 | ||
|
0
|
||
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
||
| 24.11.2022, 12:55 | ||
|
у тебя ещё до вызова функции main исполняется много различной работы.
0
|
||
|
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
|
|
| 24.11.2022, 12:58 | |
|
hoggy,
Я удалил вторую часть сообщения, позже понял что просто невнимательно прочитал текст. Но первый вопрос открыт... просто после его поста сложилось впечатление из разряда "не переживай, на обнуление ресурсы не уйдут". Особенно интересует как это можно проверить
0
|
|
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
|
| 24.11.2022, 12:59 | |
|
0
|
|
|
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
|
||
| 24.11.2022, 13:01 | ||
|
Добавлено через 1 минуту и что будет, если в момент запроса новой обнуленной памяти этот пул не будет иметь свободных страниц? ждать когда ОС сделает reallocate и обнулит новые страницы? ты уверен что это выгодное решение?
0
|
||
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
||
| 24.11.2022, 13:18 | ||
|
а вот когда тебе это действительно будет нужно,
2
|
||
|
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
|
|||||||
| 24.11.2022, 14:00 | |||||||
Просто интересно для общего развитияДобавлено через 37 минут
0
|
|||||||
|
631 / 526 / 104
Регистрация: 05.08.2022
Сообщений: 2,810
|
||
| 24.11.2022, 14:12 | ||
|
0
|
||
|
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
|
|
| 24.11.2022, 14:24 | |
|
0
|
|
|
631 / 526 / 104
Регистрация: 05.08.2022
Сообщений: 2,810
|
|
| 24.11.2022, 14:25 | |
|
0
|
|
|
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
|
||
| 24.11.2022, 14:30 | ||
|
0
|
||
|
631 / 526 / 104
Регистрация: 05.08.2022
Сообщений: 2,810
|
||
| 24.11.2022, 14:41 | ||
|
На эти вопросы отвечено.
0
|
||
|
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
|
|
| 24.11.2022, 14:47 | |
|
0
|
|
|
631 / 526 / 104
Регистрация: 05.08.2022
Сообщений: 2,810
|
|
| 24.11.2022, 14:56 | |
|
0
|
|
|
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
|
|
| 24.11.2022, 15:02 | |
|
KSergey9,
Там ни слова о zeroed pages. Естественно то что выделяется - отдается в распоряжение аллокатору. Это не мой вопрос. Вопрос был в том, если есть у аллокатора запас не zeroed байт, пойдет ли он всё равно за новой, но уже zeroed страницей, если запрос на выделение памяти содержит просьбу обнулить содержимое памяти?
0
|
|
|
485 / 411 / 126
Регистрация: 23.05.2016
Сообщений: 1,653
|
|
| 24.11.2022, 15:38 | |
|
А вариант ответа в духе "потому, что стандартом С++ не предусмотрена обязательная инициализация памяти нулями при выполнении программы" не предложен? Все остальное - философская лирика.
0
|
|
| 24.11.2022, 15:38 | |
|
"Неопределенное поведение" при выходе вводимых данных за пределы массива
Ошибка о выходе за пределы массива Почему при передачи массива через ajax на выходе выходит строка? Прокрутка в canvas при выходе содержимого за пределы Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
[golang] Worker Pool
alhaos 09.06.2026
Worker Pool
Worker Pool — паттерн конкурентной обработки задач в Go.
Суть: фиксированное количество горутин-воркеров читают задачи из общего канала
и пишут результаты в общий канал результатов. . . .
|
[golang] Pipeline
alhaos 08.06.2026
Pipeline
Pipeline — паттерн конкурентной обработки данных в Go.
Суть: данные проходят через цепочку независимых стадий, каждая из которых работает в своей горутине и общается с соседями через. . .
|
Свет внутри себя
kumehtar 07.06.2026
Пусть это будет здесь
lIs4oanZS9Y
|
Программа для com-порта
Uhbif79 05.06.2026
Всем привет, давно хотел изучить Qt, начинал, бросал, потом снова начинал. И сейчас вот смог написать свою первую программу.
До этого имел опыт программирования микроконтроллеров, писал прошивки на. . .
|
|
Транскрипция 55-минутного видео через Whisper: WhisperDesktop облажался, спас Google Colab[
anaschu 01.06.2026
Понадобилось получить текст из свежезагруженного видео на YouTube. Казалось бы, задача на пять минут. Заняла полтора часа. Делюсь опытом — может кому пригодится последовательность решений.
. . .
|
21 мат мед. Планы на развитие модели здравоСохранения
anaschu 01.06.2026
AnyLogic: план развития симуляционной модели рабочего коллектива — динамический абсентеизм, реальные данные, три сценария сравнения
Продолжаю серию постов о дискретно-событийной модели рабочего. . .
|
20. Мат мед. Абсентеизм как отдельный тип простоя
anaschu 29.05.2026
Апдейт модели: исправленные баги, абсентеизм и новые механизмы
Продолжаю развивать ранее описанную модель рабочего коллектива на AnyLogic. За последние несколько дней был проведён серьёзный. . .
|
19. здоровье, усталость и психотип работника влияют на производительность предприятия, и наоборот, производительность на здоровье, усталось и психотип
anaschu 28.05.2026
Дискретно-событийная модель рабочего коллектива на AnyLogic: здоровье, выгорание, психотипы и микростимуляция
Привет, коллеги. Хочу поделиться итогами нескольких недель работы над симуляционной. . .
|