|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,886
|
||||||||||||||||
Невыводимое сообщение про badalloc07.03.2015, 19:15. Показов 2222. Ответов 32
Метки нет (Все метки)
Вылетает с сообщеним std::badalloc.
Не вылетает с сообщеним std::badalloc. и завершается успешно
________________________________________ __ Но при этом вылетает если пробовать обойти весь массив.
Всего 8ГБ, 4,40ГБ свободно, Win7x64, gnu gcc
0
|
||||||||||||||||
| 07.03.2015, 19:15 | |
|
Ответы с готовыми решениями:
32
И снова про PopupMenu (было про длину, теперь про ширину)
Создать файл с информацией о студентах, вывести сообщение про студентов по возрастанию их балла за сессию |
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,886
|
|
| 07.03.2015, 20:50 [ТС] | |
|
0
|
|
|
1675 / 1047 / 174
Регистрация: 27.09.2009
Сообщений: 1,945
|
|
| 07.03.2015, 20:52 | |
|
1
|
|
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,886
|
|
| 07.03.2015, 20:58 [ТС] | |
|
Чего-то здесь не сходится с суждениями.
Ну или я черезчур тупой.(не исключаю)
0
|
|
|
383 / 281 / 31
Регистрация: 04.09.2009
Сообщений: 1,225
|
|
| 07.03.2015, 20:59 | |
|
1
|
|
| 07.03.2015, 21:12 [ТС] | |
|
Не по теме: Я про size_t понял так, что этот size_t имеет отношение к моему посту с цитатой из Прата. Т.е. ситуация такая, когда константа-таки не довыделяется на столько насколько требуется. Поэтому там мне посоветовали указать соответствующий размер.
0
|
|
|
Модератор
13799 / 10990 / 6493
Регистрация: 18.12.2011
Сообщений: 29,291
|
||||||
| 07.03.2015, 21:22 | ||||||
|
А ведь действительно
0
|
||||||
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,886
|
|||||||||||
| 07.03.2015, 21:39 [ТС] | |||||||||||
|
Убежденный, Хорошо, что Вы меня направляете на путь истинный, благодаря Вам я сейчас что-то еще узнал (причем действительно полезное). Но, Вам не кажется, что мой вопрос имеет отношение немного к другому?
1200000000000 не влазит в size_t твоего компилятора. В результате переполнения получается 1704124416. а 1000000000000 влазит что ли?)) _____________________ У меня не вопрос: "Почему ошибка". У меня вопрос: "Почему в аналогичной ситуации две различные реакции программы". В одном случае вылет с сообщением о BadAlloc, во втором случае просто вылет _________ (с тем к чему пришли про size_t) В одном случае вылет с badalloc Во втором случае все окей Ведь судя из возвращаемого значения new должно получаться size_t и в первом и во втором случаях. Может это кто-то пояснить? вылет с badalloc
0
|
|||||||||||
|
Ушел с форума
|
||||||||
| 07.03.2015, 22:02 | ||||||||
Сообщение было отмечено daslex как решение
РешениеВыражение "type * p = new type[count]" на двоичном уровне так или иначе приходит к вызову функции выделения памяти размером как минимум "sizeof (type) * count" байт. В обоих приведенных случаях значение count, как мы уже выяснили, не влезает в тип size_t и поэтому "выдает себя за другого". В итоге 1000000000000 превращается в 3567587328, а 1200000000000 превращается в 1704124416. Дальше происходит еще одно переполнение. А именно: размер uint64_t - 8 байт, поэтому конструкция "uint64_t * p = new uint64_t[3567587328]" приводит к попытке выделения 3567587328 * 8 = 2770894848 байт (да-да, такая вот арифметика). Не знаю, как в других операционках, но в 32-битных процессах Windows выделить порядка двух гигов непрерывной памяти практически невозможно. Отсюда и std::bad_alloc в первом примере. Во втором примере немного по-другому: 1704124416 * 8 = 748093440, меньше одного гигабайта. Да, много, но система выделить может. Поэтому здесь std::bad_alloc нет. Пример для иллюстрации написанного выше (Visual C++ 2008 SP1, Win32):
2
|
||||||||
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,886
|
|
| 07.03.2015, 22:04 [ТС] | |
|
Вот это я и хотел узнать. Спасибо.
0
|
|
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,886
|
||||||||
| 07.03.2015, 23:22 [ТС] | ||||||||
|
Сразу же я привожу пример где я пытаюсь это изобразить, но у меня на это ноль реакции. Не получилось - значит не хватает знаний. Не хватает знаний - значит не умею.
из Прата
0
|
||||||||
| 07.03.2015, 23:46 [ТС] | |
|
Не по теме: Тема другая нужна. Это ведь другой вопрос. Если я сам не разберусь, спрошу :) Мне пока что это не нужно.
0
|
|
| 07.03.2015, 23:46 | |
|
Про ШИМ в роли ЦАП и про АЦП на примере резистивного датчика Версии Делфи 10 и 7. Можно где-то почитать про их особенности, про совместимость?
моя первая плата, хедеры - вопрос про eagle или про пайку разное про работу инвертора, трансформатора + про esr Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Транслитерация текста с кириллицы на латиницу
Maks 11.11.2026
Решил облегчить жизнь себе и коллегам админам при создании электронных почтовых ящиков для пользователей, в результате написал обработку "Транслитерация текста" с кириллицы на латиницу, а в ней. . .
|
Книги по геймдизайну, левел-дизайну, игровым механикам и проектированию игрового опыта
8Observer8 08.11.2026
Содержание блога | English Version
1. 2003 - 06 - Designing Virtual Worlds (1st Edition)
Автор: Richard A. Bartle | Объем: 768 стр.
Ссылки: Amazon
. . .
|
Родители токсичные абьюзеры по отношению к своим детям ругают их оскорбляют не любят
zorxor 08.11.2026
Жить в атмосфере постоянных оскорблений, критики и холодности со стороны родителей — это тяжелое и болезненное испытание, которое оставляет глубокие эмоциональные раны. Токсичное и абьюзивное. . .
|
Как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы. Ответ от Джемени ИИ.
zorxor 08.11.2026
Джемени, как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы.
Многие люди, возвращаясь домой, сразу переодеваются в максимально свободную одежду или вовсе предпочитают. . .
|
|
Паттерн очереди действий/команд (Action / Command Queue). Система очереди действий и кат-сцен с SDL3 Callbacks, cglm и OpenGL
8Observer8 07.11.2026
Содержание блога | English Version
Руководство для начинающих по реализации паттерна очереди действий/ команд (Action / Command Queue) на C++ (C++20) с использованием официального SDL3 Callbacks. . .
|
Проверка полного ФИО в типовом справочнике
Maks 07.11.2026
Решение реализовано в конфигурации КА2, на примере справочника "КонтактныеЛицаПартнеров".
Задача:
Запрет инициалов.
Не допускаеть использование сокращений вида "И. И. ", "И. И. ", "И И" и. . .
|
Про "Windows must die!"
kumehtar 04.11.2026
Знаете, чет накатило. . . .
Когда-то это было почти боевым кличем: мол, нормальный человек сидит на DOS, OS/ 2 или Linux, а вот это вот - Must Die. А теперь человек произносит «мастдай» с усмешкой - и. . .
|
Красочные поля с номером страницы svg+background-image
russiannick 04.11.2026
Красочные поля с номером страницы не менее важны чем в эпоху бумажных книг.
Посему спешу представить почтеннейшей публике этот важный инструмент который эти поля и формирует.
В процессе разработки. . .
|