Как написать простейшее unicode-приложение?

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Re: Как написать простейшее unicode-приложение?

Сообщение postscripter » 03.06.2012 17:49:03

А в чём преимущество использования специальных функций, если и без них сравнение (в программе, а не в отладчике) работает правильно? Я так понял, сравниваются чётные байты, поскольку нечётные в пределах одного алфавита почти не меняются ($D0 или $D1 для кириллицы).

Добавлено спустя 22 минуты 24 секунды:
И ещё мааленький вопросик.. здесь же, чтобы темы не плодить... При ошибках компиляции строка подсвечивается оранжевым, но почему-то не в том юните, где ошибка, а открывается новая вкладка Unit1(2), и в ней - последняя сохранённая на диске копия, без несохранённых изменений. Это может быть связано с русскими символами в пути к проекту?

Добавлено спустя 1 час 8 минут 20 секунд:
И с брекпойнтами какая-то фигня. Останавливается там, где раньше была стоп-точка, даже если я её снял. Иногда останавливается на строчку выше, или ниже...
postscripter
новенький
 
Сообщения: 24
Зарегистрирован: 31.05.2012 20:22:01

Re: Как написать простейшее unicode-приложение?

Сообщение postscripter » 05.06.2012 21:51:20

Хелло, люди! В обсуждении есть вторая страница))))
postscripter
новенький
 
Сообщения: 24
Зарегистрирован: 31.05.2012 20:22:01

Re: Как написать простейшее unicode-приложение?

Сообщение Padre_Mortius » 05.06.2012 22:01:16

А в чём преимущество использования специальных функций, если и без них сравнение (в программе, а не в отладчике) работает правильно? Я так понял, сравниваются чётные байты, поскольку нечётные в пределах одного алфавита почти не меняются ($D0 или $D1 для кириллицы).

В том, что символ в UTF8 совсем не обязательно 1 байт, и при работе с байтами нужно это учитывать. Специальные функции это как раз учитывают. т.е. UTF8Length вернет именно количество символов, а Length вернет количество байт.

По остальным пунктам нужно смотреть версию компилятора fpc, т.к. именно с ним в комплекте под Windows идет отладчик. Возможно стоит обновить компилятор до версии 2.6.0 и пересобрать Lazarus
Padre_Mortius
энтузиаст
 
Сообщения: 1265
Зарегистрирован: 29.05.2007 17:38:07
Откуда: Спб

Re: Как написать простейшее unicode-приложение?

Сообщение postscripter » 05.06.2012 22:21:10

Да, у меня 2.6.0, и с ним лазарус себя пересобирал несколько раз. Вопрос по сравнению строк - чисто из интереса. Сейчас всё сравнивается (вот<так) и никаких проблем ни с русским, ни с другими наречиями, независимо от числа байт в букве. А вот вопрос про вкладки и брейкпоинты очень актуален...

Добавлено спустя 22 секунды:
...ибо бесит небылинно (с) :)
postscripter
новенький
 
Сообщения: 24
Зарегистрирован: 31.05.2012 20:22:01

Re: Как написать простейшее unicode-приложение?

Сообщение Brainenjii » 05.06.2012 22:33:48

Про строчку ниже - та же фигня, правда только при работе с обобщениями. Буду рад услышать как победить (сам смирился). Очень-очень-очень редко помогает полная пересборка проекта (Shift+F9).
"Фантомные" точки останова отключаются через окно отладки точек останова (View -> Debug Windows -> BreakPoints (Сtrl+Alt+B по дефолту))
Аватара пользователя
Brainenjii
энтузиаст
 
Сообщения: 1351
Зарегистрирован: 10.05.2007 00:04:46

Re: Как написать простейшее unicode-приложение?

Сообщение postscripter » 05.06.2012 22:41:04

Ага, спасибо, попробую...
postscripter
новенький
 
Сообщения: 24
Зарегистрирован: 31.05.2012 20:22:01

Пред.

Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: Majestic-12 [Bot] и гости: 239

Рейтинг@Mail.ru
cron