![]() |
Показать все 7 сообщений этой темы на одной странице |
HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Технические вопросы (https://hlfx.ru/forum/forumdisplay.php?forumid=20)
-- Память, c++ и visual studio 6.0 (https://hlfx.ru/forum/showthread.php?threadid=1613)
Память, c++ и visual studio 6.0
Обращаюсь к знатокам студии.
Есть консольная прога, которая делает большой и толстый расчет. На одной из итераций она выдает сообщение об ошибке доступа в память (классика "память не может быть read"), при этом диспетчер задач сообщает, что кушает она всего ~760 килобайт. У меня есть предположение, что прога просто не может выйти за адрессацию дальше 640 килобайт и глохнет, ибо памяти ей надо гораздо больше. Как быть?
Я так думаю, что нужно ее организовать как полноценное 32-разрядной приложение windows, но как это сделать с наименьшими затратами, чтоб не пришлось рисовать окошки и вообще задумываться над всей этой галиматьей с WinAPI?
__________________
"Злобным гениям не нужна харизма." © Shooter__Andy
"Making stuff for an "old ugly game" can be ten times more fun than grinding on a map for a dull, next-gen title." © Lunaran
__________________
Так почему она тогда упирается в свои 760 килобайт и дальше не выделяет?
Там именно что очень странная ситуация - для 19 итераций все пучком, овтет правильный, работа ровная и аккуратная вне зависимости от исходных данных, а на 20 итерации вылетает с неверной адресацией.
Я, конечно, это дело все перепишу на Дельфах, но человеку удобнее иметь именно плюсовое приложение
__________________
"Злобным гениям не нужна харизма." © Shooter__Andy
"Making stuff for an "old ugly game" can be ten times more fun than grinding on a map for a dull, next-gen title." © Lunaran
Если ты определил, на какой именно итерации она вылетает, то запускай дебаггер, делай останов на это итерации (скажем, через __asm int 3) и пошагово ее выполняй дальше. Какие тут еще можно дать советы?
__________________
XaeroX да, надо попробовать... Фишка в том, что одна итерация минут 20 длится...
__________________
"Злобным гениям не нужна харизма." © Shooter__Andy
"Making stuff for an "old ugly game" can be ten times more fun than grinding on a map for a dull, next-gen title." © Lunaran
Scrama тогда надо выделять в ней подытерации
__________________
проверить, действительно ли винда не дает памяти очень легко.
После маллока ставим брекпоинт или ассерт на предмет ненулевого указателя.
Но я почти уверен что дело не в этом.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Временная зона GMT. Текущее время 22:02. | Показать все 7 сообщений этой темы на одной странице |
На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024