Записи за месяц: January 2013

Inc(i)

Все знают, что когда перебираешь null-terminated строки, то нужно останавливаться по нулю:

while pc^<>#00 do Inc(pc); //ищем конец строки

Все знают, что когда перебираешь дельфийские строки, нужно останавливаться, когда индекс превысит длину строки:

while (i<Length(s)) and (s[i]=' ') do Inc(i); //пропускаем пробелы

Все знают, что у дельфийских строк в конце всё равно ноль.

 74 00 65 00 73 00 74 00 00 00

Но не всем и не сразу приходит в голову, что длину дельфийской строки тоже часто можно не проверять!
Второй пример можно записать так:

while s[i]=' ' do Inc(i); //пропускаем пробелы

В конце строки ноль, а ноль – это не пробел, поэтому цикл сам собой прервётся.

Где надо быть осторожным – так это при промотке строки назад. В начале строки нуля нет:

while (i>0) and (s[i]=' ') do Dec(i); //пропускаем пробелы в обратную сторону

ват

У меня когнитивный… я не знаю, как это назвать даже!
Я уже долгое время читаю один хороший вебкомикс. Про пацана и его девушку, автобиографический. Вот небольшой стрип, например. Или вот. Ну короче, такой.

Так вот, я сейчас внезапно выяснил.
Что вот этот парень с короткой стрижкой. Он же автор этого комикса.
Это, &%%%$, (спойлер)

девушка.

И она не имеет в виду рисовать парня. Просто так у неё получается. Потому, что она плоскогрудая коротковолосая лесбиянка.

АТАМА ОКАШИИИИИИИИ СОНО ХИТО!

А комикс такой хороший был.

.