Ver Mensaje Individual
  #2  
Antiguo 01-02-2010
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Reputación: 29
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Lo que ves en la lista de observaciones (watch list) es normal y se debe a la optimización que hace el compilador al generar el código máquina resultante.

En teoría, desactivando la optimización deberías ver el valor que esperas.

Otra forma de conocer el valor de la variable contador, sin desactivar la optimización, es "provocar" que dicha variable tenga mayor uso dentro del ciclo. Por ejemplo:

Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var
    m : mensaje_letrero;
    i : integer;
begin
  for i:=0 to 4 do begin
    If I = I Then;  // Sentencia para poder ver a I con su valor "real"
    m.mensaje[i]:=$20;
  end;
end;

Cabe mencionar que, aún con la optimización que Delphi hace del código máquina, tu programa se ejecutará como lo esperas (internamente el programa usa otro "contador" para la asignación, en lugar de I).

Espero te resulte útil.

Hasta pronto.

Al González.
Responder Con Cita