crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

2 страниц V   1 2 >  
Ответить в данную темуНачать новую тему
> exited with code -1073741571 при больших массивах
PiT2000
  опции профиля:
сообщение 15.6.2011, 23:24
Сообщение #1


Новичок


Группа: Новичок
Сообщений: 5
Регистрация: 15.6.2011
Пользователь №: 2746

Спасибо сказали: 0 раз(а)




Репутация:   0  


День добрый.
Есть вот какая проблема. При использовании больших массивов
................................
    double x[99999];
    double y1[99999];
    double y2[99999];
................................

во время запуска приложения вылазит ошибка exited with code -1073741571
при этом вот так работает нормально
................................
    double x[75000];
    double y1[75000];
    double y2[75000];
................................

пробовал объявлять так
................................
    double x[];
    double y1[];
    double y2[];
................................

при достижении какой то критической массы происходит таже ошибка

Win 7
версия Qt 4.7.1
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
RazrFalcon
  опции профиля:
сообщение 16.6.2011, 2:07
Сообщение #2


Zombie Mod
*****

Группа: Участник
Сообщений: 1654
Регистрация: 24.5.2010
Из: Харьков
Пользователь №: 1752

Спасибо сказали: 64 раз(а)




Репутация:   212  


В дебаг запускать пробовали?
Что бы найти место вылета.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 16.6.2011, 3:36
Сообщение #3


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9656
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


почитай тут
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
PiT2000
  опции профиля:
сообщение 16.6.2011, 10:23
Сообщение #4


Новичок


Группа: Новичок
Сообщений: 5
Регистрация: 15.6.2011
Пользователь №: 2746

Спасибо сказали: 0 раз(а)




Репутация:   0  


В System32 Qt библиотек нет.
PATH
C:\MinGW\bin;
C:\Qt\4.7.1\bin;
%SystemRoot%\System32

Судя по дебагу прерывается на входе в main
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
BRE
  опции профиля:
сообщение 16.6.2011, 10:36
Сообщение #5


Профессионал
*****

Группа: Участник
Сообщений: 1112
Регистрация: 6.3.2009
Из: Ростов-на-Дону
Пользователь №: 591

Спасибо сказали: 264 раз(а)




Репутация:   44  


Нельзя такие большие массивы определять на стеке, он не резиновый.
Используй кучу.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
PiT2000
  опции профиля:
сообщение 16.6.2011, 11:45
Сообщение #6


Новичок


Группа: Новичок
Сообщений: 5
Регистрация: 15.6.2011
Пользователь №: 2746

Спасибо сказали: 0 раз(а)




Репутация:   0  


Цитата(BRE @ 16.6.2011, 11:36) *
Нельзя такие большие массивы определять на стеке, он не резиновый.
Используй кучу.

Во оно самое. Спасибо.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Алексей1153
  опции профиля:
сообщение 16.6.2011, 17:15
Сообщение #7


фрилансер
******

Группа: Участник
Сообщений: 2901
Регистрация: 19.6.2010
Из: Обливион
Пользователь №: 1822

Спасибо сказали: 215 раз(а)




Репутация:   34  


PiT2000, по стек уже сказали, про кучу тоже

а вот тут
Цитата
пробовал объявлять так
................................
    double x[];
    double y1[];
    double y2[];
................................

при достижении какой то критической массы происходит таже ошибка

- что ты имел в виду ?
По идее, это массив нулевой длины на стеке. То есть ты лез в стек, портя всё любое, пока не переполнил стек и не вывалилась ошибка переполнения
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
PiT2000
  опции профиля:
сообщение 16.6.2011, 18:53
Сообщение #8


Новичок


Группа: Новичок
Сообщений: 5
Регистрация: 15.6.2011
Пользователь №: 2746

Спасибо сказали: 0 раз(а)




Репутация:   0  


По идеи да. Ошибка вываливалась примерно в тот же период как и если указать линну
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Алексей1153
  опции профиля:
сообщение 17.6.2011, 13:06
Сообщение #9


фрилансер
******

Группа: Участник
Сообщений: 2901
Регистрация: 19.6.2010
Из: Обливион
Пользователь №: 1822

Спасибо сказали: 215 раз(а)




Репутация:   34  


PiT2000, как это вообще произошло у тебя. Не контролируешь индекс на выход за край массива. Обрати внимание на этот момент везде в программе :)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
PiT2000
  опции профиля:
сообщение 17.6.2011, 17:40
Сообщение #10


Новичок


Группа: Новичок
Сообщений: 5
Регистрация: 15.6.2011
Пользователь №: 2746

Спасибо сказали: 0 раз(а)




Репутация:   0  


Ок. спс.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

2 страниц V   1 2 >
Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 4.12.2020, 5:32