Преобразование цикла C «FOR» в Delphi - PullRequest
2 голосов
/ 03 апреля 2012

Я пытаюсь преобразовать цикл FOR из C в Delphi, но у меня есть некоторые сомнения:

Я знаю этот код в C:

       for (i = 0; i < mb->size; i++)
       {
           //...
       }

похож на это в Delphi:

       for i := 0 to mb.size do 
       begin
           //...
       end;

Но как этот код C:

       for (i = 0; i < mb->size; i+= mb->data_size)
       {
        //...
       }

может выглядеть в Delphi?

       ?

1 Ответ

10 голосов
/ 03 апреля 2012

Вы не можете использовать for в Delphi, чтобы сделать это, потому что переменная, используемая для итерации, не может быть изменена.

Таким образом, этот код

for (i = 0; i < mb->size; i+= mb->data_size)

может быть записан с использованием while

  i:=0;
  while (i<mb.size) do
  begin
   // do something
   Inc(i, mb.data_size);
  end;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...