Domanda

Ho trovato che un ciclo annidato fallisce quando viene raggiunta una condizione particolare, in qualche modo, quando i = 1, J = 3 ek = 5

ho cercato di fare clic destro sul punto di interruzione e nel set condizioni I

(I = 1) e (J = 3) e (K = 5)

in ogni caso il punto di interruzione non si ferma ...

Cosa c'è di sbagliato?

È stato utile?

Soluzione

Ho appena provato che nella D2007 e funziona benissimo. quale versione stai usando?

procedure TForm85.FormClick(Sender: TObject);
var i,j,k : integer;
    z:integer;
begin

  for i := 0 to 10 do
  for j := 0 to 10 do
  for k := 0 to 10 do
  BEGIN
    z := z + i * j * k; // breakpoint on this line.
  END;

  ShowMessage(IntToStr(z));
end;

Avete considerato che il punto di interruzione non può essere raggiunto in quanto la condizione non è soddisfatta?

Altri suggerimenti

Hai fatto aggiungere il punto di interruzione come Rottura punto di interruzione presumo.

Per verificare questo

  • aprire la finestra delle proprietà Punto di interruzione
  • fare clic su Avanzate
  • assicurarsi che il Interruzione casella è selezionata.

Può essere secondo il vostro codice

(I = 1) and (J = 3) AND (K = 5)

non può mai ottenere questi valori allo stesso tempo

Imposta punto di interruzione su una riga di codice prima che la condizione è soddisfatta e passo attraverso con F8?

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top