Конференция "Прочее" » бред.. цикл от 0 до -1 как-то зашел в тело
 
  • ВладОшин © (01.09.16 15:12) [0]
    http://hostingkartinok.com/show-image.php?id=78716c9a029e366e16ce99cd732e17e5

    for j := 0 to messages.Count-1 do
    // messages.Count = 0
    тем не менее, зашел как-то
    ловлю AV, конечно
  • Sha © (01.09.16 15:22) [1]
    наверно,  j объявлено как byte, word или cardinal ?
  • ВладОшин © (01.09.16 15:26) [2]
    >> Sha ©  
    да, cardinal (LongWord)
    а
    property Count: Integer

    спасибо, понял
  • Kipor © (01.09.16 17:07) [3]
    а разве компилятор не должен был предупреждение выдать если переменная цикла не integer
  • ВладОшин © (01.09.16 17:12) [4]
    нет. С чего бы.
    Вот если сравнивать разные типы - должен. Но не выдал почему-то.
  • ВладОшин © (01.09.16 17:15) [5]
    а, так я и не сравнивал в явном виде
  • Игорь Шевченко © (01.09.16 17:19) [6]
    Объявляющим переменные цикла типом без знака надо отрубать правую руку.
  • ВладОшин © (01.09.16 17:42) [7]

    > Игорь Шевченко ©   (01.09.16 17:19) [6]

     for c := 'a' to 'z' do
  • Slider007 © (01.09.16 19:00) [8]

    > Игорь Шевченко ©   (01.09.16 17:19) [6]

    Хорошо, что Вы законы РФ не пишите :)
  • Kipor © (01.09.16 20:58) [9]
    Хорошо, что Игорь не модератор, а то бы всех перебанил.
  • Kipor © (01.09.16 20:58) [10]
    Ан нет, модератор :))
  • KilkennyCat © (01.09.16 21:04) [11]
    тогда и левую руку отрубить. за использование for для перебора всех элементов
  • Manaka © (01.09.16 21:10) [12]

    > Игорь Шевченко ©   (01.09.16 17:19) [6]
    > Объявляющим переменные цикла типом без знака надо отрубать
    > правую руку.


    Два пальца. Без трех в армию не возьмут. И в дворники )))
  • ВладОшин © (01.09.16 22:02) [13]
    class function TObject.ClassNameIs(const Name: string): Boolean;

     I: Byte;

     for I := 0 to Byte(Temp[0]) do
       if Temp[I] <> Name[I]

    ----
    unit System;

    procedure   _InitializeRecord(p: Pointer; typeInfo: Pointer);
    {$IFDEF PUREPASCAL}
    var
     FT: PFieldTable;
     I: Cardinal;
    begin
     FT := PFieldTable(Integer(typeInfo) + Byte(PTypeInfo(typeInfo).Name[0]));
     for I := FT.Count-1 downto 0 do
  • asail © (01.09.16 22:07) [14]

    > тогда и левую руку отрубить. за использование for для перебора
    > всех элементов

    Стесняюсь спросить, а что надо использовать? Д6, если чё... ;)
  • Asail © (01.09.16 22:10) [15]

    > да, cardinal (LongWord)

    У меня обратная ситуация была, когда я время считал разницей GetTickCount, храня промежуточные значения в переменной типа Integer... Те еще спецэффекты ловил...
  • Dimka Maslov © (01.09.16 22:22) [16]

    > Стесняюсь спросить, а что надо использовать


    Энумераторы. Хотя что-то мне подсказывает, что на низком уровне всё-равно скатится до REPNZ...
  • KilkennyCat © (01.09.16 22:28) [17]

    > asail ©   (01.09.16 22:07) [14]

    ах, делфи... ну, тогда и ноги отрубить :)
  • ВладОшин © (01.09.16 22:28) [18]

    > Asail ©   (01.09.16 22:10) [15]
    >

    у меня банальнее несколько
    нода джейсон в принципе не нужна, просто решил выпендриться, распарсить и ее
    ну и просто, не думая, воткнул переменную куда попало, а попало как раз
    к переменной под GetTickCount заюзаной.

    И данные были удачные поначалу, ну и забыл

    (там отзывы посетителей, текстом, от руки. Для ТТХ богадельней не нужны в принципе, но решил, что позже придумаю как на основе слов оценить в целом в + или в - написал человек. А это уже можно сконвертировать в еще одну характеристику, реальную, числовую)

    и "сломалось" на отсутствии комментов у одной конторы..
  • ВладОшин © (01.09.16 22:30) [19]

    >
    > > Стесняюсь спросить, а что надо использовать
    >
    >
    > Энумераторы.


    в делфи 6 их нет, если не ошибаюсь
  • Inovet © (02.09.16 09:48) [20]
    Какие вы все позитивные, за что и люблю этот форум.:)
  • картман © (02.09.16 17:57) [21]
    а чем энумератор лучше?
  • Германн © (03.09.16 01:48) [22]

    > ВладОшин ©   (01.09.16 17:42) [7]
    >
    >
    > > Игорь Шевченко ©   (01.09.16 17:19) [6]
    >
    >  for c := 'a' to 'z' do
    >

    А с таким циклом проблем никогда не было, нет сейчас и быть никогда не будет. Но тут переменная цикла не есть переменная целого типа. Это символьная переменная, которая в принципе не может "вылезть" за границы своего типа и за границы цикла.
  • Rouse_ © (03.09.16 07:43) [23]
    Мдя, почитал  я вас и вспомнилась притча: любое утверждение - ложно (включая текущее)
  • Rouse_ © (03.09.16 07:49) [24]
    А за советы ограничивать цикл типом со знаком - отрубать левую за неиспользование штатных отладочных механизмов в настройках компилера,
  • Игорь Шевченко © (03.09.16 11:45) [25]

    > за неиспользование штатных отладочных механизмов в настройках
    > компилера


    Да, это полезно, спасибо за напоминание.
  • kilkennycat © (04.09.16 08:58) [26]
    как программисты доживают до пенсии с полностью сохраненными конечностями?
  • stas © (05.09.16 17:25) [27]

    > KilkennyCat ©   (01.09.16 21:04) [11]
    > тогда и левую руку отрубить. за использование for для перебора
    > всех элементов


    И ноги за использование любого оператора...
 
Конференция "Прочее" » бред.. цикл от 0 до -1 как-то зашел в тело
Есть новые Нет новых   [134431   +15][b:0][p:0.001]