|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
13.03.2014, 19:25 | #1 |
Пользователь
Регистрация: 27.02.2011
Сообщений: 31
|
перегружен стек
Здравствуйте, что мне сделать, что-бы увеличить объем массив, пишет, стек перегружен.
Код:
Последний раз редактировалось Stilet; 13.03.2014 в 20:50. |
13.03.2014, 19:43 | #2 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,318
|
Откуда взялся индекс r?
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
|
13.03.2014, 20:06 | #3 |
Пользователь
Регистрация: 27.02.2011
Сообщений: 31
|
перегрузка стека
Спасибо. исправил. но все равно не работает
Код:
Последний раз редактировалось Stilet; 13.03.2014 в 20:50. |
13.03.2014, 20:29 | #4 | ||
Форумчанин
Регистрация: 13.05.2010
Сообщений: 670
|
Цитата:
Цитата:
|
||
13.03.2014, 21:46 | #5 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,318
|
Проверил у себя - и правда выдается ошибка. Посчитал количество требуемой памяти для этой матрицы 102687816 байт ~ 97 мегабайт (в настойках проекта посмотрел - максимальный размер стека задан 1048576 байт = 1 мегабайт). Когда объявил матрицу глобальной переменной, то ошибка исчезла.
bulldog5293, благодарил меня. А зачем уточнять-то про индекс? Это был намёк на несоответствие индексов в циклах.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
|
13.03.2014, 21:51 | #6 |
Новичок
Джуниор
Регистрация: 11.10.2011
Сообщений: 3,882
|
Как вариант :
{$M 101711872} |
14.03.2014, 12:11 | #7 |
Пользователь
Регистрация: 27.02.2011
Сообщений: 31
|
Перегружен стек
Я не силен в прог., но поставил переменную в другие места, показывает перегрузку, поправте пожалуйста. Заранее благодарю.
private { Private declarations } Mat:array[0..180,0..10,0..1118,0..613] of integer; public { Public declarations } {Mat:array[0..180,0..10,0..1118,0..613] of integer;} end; var Form1: TForm1; {Mat:array[0..180,0..10,0..1118,0..613] of integer;} implementation |
14.03.2014, 12:57 | #8 |
Пользователь
Регистрация: 27.02.2011
Сообщений: 31
|
перегрузка стека
Сделал так, все равно показывает перегрузку.
private { Private declarations } public { Public declarations } end; type TDynArr=array of integer; var Mat1:TDynArr; x,y:integer; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.ButtonClick(Sender: TObject); var x,y,a,b,f,q,i,r,i1,r1,m,T,J,count,s ize:integer; RMax, x_width, y_height: integer; OperBegin, OperEnd: TTimeStamp; Total: LongWord; Teta,Teta1: Double; ArPoint: array of Tpoint; Mat1: array [0..1118, 0..613] of integer; begin for x:=Low(Mat1) to High(Mat1) do for y:=Low(Mat1[x]) to High(Mat1[x]) do Mat1[x,y]:=0; |
14.03.2014, 12:59 | #9 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,318
|
Вам точно нужен такой большой массив? Да еще и статический. Вот при таком объявлении у меня не было ошибки:
Код:
Попробуйте (не проверял): Код:
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
Последний раз редактировалось BDA; 14.03.2014 в 13:03. |
14.03.2014, 13:03 | #10 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
вместо
Цитата:
Код:
p.s. я не понимаю, зачем Вам такие огромные массивы и не понимаю, что Вы делаете, поэтому не уверен, что мой совет Вам поможет (в статегическом плане)... |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
стек на с++ | Светa | Общие вопросы C/C++ | 2 | 19.02.2012 18:44 |
Стек на С++ | Electroflower | Общие вопросы C/C++ | 37 | 05.01.2012 14:20 |
стек | cop08 | Общие вопросы C/C++ | 1 | 25.03.2011 19:18 |
стек в с++ | Aleksa_ks | Помощь студентам | 0 | 02.05.2010 12:12 |