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

Pascal   Найти похожие ветки 

 
Seldon   (2002-12-01 17:35) [0]

Здрасьте. Есть такой код:
var
B:array[-50..50,-50..50] of Integer;
w,z:Integer;
begin
{...}
for z:=-50 to 50 do
for w:=-50 to 50 do
Plus:=B[w,z]>0 and not Plus;{1}
{...}
end.
Ну дык вот, при первом проходе циклов в точе 1 z=101 и w=101!!! B[w,z] проходит без проблем, хотя 101 выходит за рамки массива! И по мере прохождения циклов z и w уменьшаются! Что Вы думаете по этому поводу?


 
TTCustomDelphiMaster ©   (2002-12-01 18:12) [1]

Все нормально это работа оптимизатора.


 
Anatoly Podgoretsky ©   (2002-12-01 20:42) [2]

Хорошо думаем, а что?


 
Seldon   (2002-12-01 21:20) [3]

>>TTCustomDelphiMaster ©
А не подскажете, как это выключить? А то ведь отлаживать неудобно.

>>Anatoly Podgoretsky ©
Спасибо!


 
TTCustomDelphiMaster ©   (2002-12-01 21:29) [4]

{$O-}
var
B:array[-50..50,-50..50] of Integer;
w,z:Integer;
begin
{...}
for z:=-50 to 50 do
for w:=-50 to 50 do
Plus:=B[w,z]>0 and not Plus;{1}
{...}
{$O+}

Или снять галочку Project - Options - Compiler - Optimization



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

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



Память: 0.45 MB
Время: 0.01 c
14-36413
Odnako
2002-11-22 14:57
2002.12.12
Не удаляются колонки


1-36125
SemFLY
2002-12-01 02:06
2002.12.12
RadioButton простой вопрос


4-36478
Бульбаш
2002-10-30 15:38
2002.12.12
При использовании RxTrayIcon при старте приложения в


8-36304
Ларри
2002-08-28 09:42
2002.12.12
Регулятор громкости


1-36149
Noname_
2002-12-03 17:46
2002.12.12
Pointer




   Наверх