Вниз
Скачать: CL | DM;

Влияние позиции переменной в разделе var на работу программы   Найти похожие ветки 

← →
Pasha L ©   (2007-01-13 21:53) [0]

Здравствуйте. Вчера я написал о странной ошибке, которая вылезала до тез пор пока я не отрубил оптимизатор. Затем стала появляться ещё одна ошибка. Тоже немного странная :) . циклы
for y:=0 to y2 do
 for x:=0 to x2 do

выполнялись, но на какой-то стадии x2 принимала какое-то черт знает откуда взятое значение... x2 я нигде не менял и это точно. И вот, получил доказательство своей правоте: в разделе var, в ряду объявления переменных типа integer я взял, и переместил x2 и y2 с последних позиций на 3-ю и 4-ю. Ошибка не выползает. Я проверил несколько раз: поперемещал туда-сюда. По-моему, это похоже на какую-то глупость, но то, вылезет ошибка или нет, зависит от позиции переменной в варе. В чем дело, кто знает?


← →
antonn ©   (2007-01-13 21:56) [1]

в каком именно "варе"? весь код дай


← →
Zeqfreed ©   (2007-01-13 22:04) [2]

Телепатирую: использовал значения счетчиков за пределами циклов?


← →
ors_archangel ©   (2007-01-13 22:07) [3]


> . Затем стала появляться ещё одна ошибка. Тоже немного странная

И что это за новая ошибка? В [0] ты опять описал старую. Ты уверен, что переменные у тебя всегда var"овые? А вообще, зачем тебе пускать ограничения цикла по ссылке, ты их меняешь? Где?


← →
Pasha L ©   (2007-01-13 22:24) [4]

antonn ©   (13.01.07 21:56) [1]
всё это происходит в процедуре. Вар в той же процедуре. Весь код?... он очень большой... Я думаю, что тут не в коде самом дело. Мне кажется, что такого рода проблема как бы хрестоматийная, потому что редкая и очень странная (как мне кажется). Могу скинуть весь проэкт :)


← →
Sha ©   (2007-01-13 22:33) [5]

> Pasha L ©   (13.01.07 21:53)
> это похоже на какую-то глупость,

Это похоже на выход за границу массива
Опцию компилятора "Range checking" включи

> но то, вылезет ошибка или нет, зависит от позиции переменной в варе

Ты просто не всегда замечаешь ошибку


← →
Pasha L ©   (2007-01-13 22:34) [6]

Так, уважаемые ребята. Я понял в чем дело. В циклах я изменял значения переменных находящихся по адресам несуществующих элементов массива. В этом было дело.


← →
Sha ©   (2007-01-13 22:37) [7]

Поздравляю



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.029 c
2-1168424847
RomanH
2007-01-10 13:27
2007.01.28
Заголовок DBGrid а


15-1168248102
Геннадий
2007-01-08 12:21
2007.01.28
Отдел "К" Республики Коми будет "разрабатывать" всех


10-1128086100
Andrew Dovgal
2005-09-30 17:15
2007.01.28
Программо получить RTF из OLE-automated Word a


2-1168104252
Footballer
2007-01-06 20:24
2007.01.28
Микрофон


3-1163059970
DelphiLexx
2006-11-09 11:12
2007.01.28
Заблокировать запись




   Наверх