- Код: Выделить всё
var a: String;
begin
a:='qwe';
ShowMessage(IntToStr(Length(a)));
end;
Покажет цифру три. А если так:
- Код: Выделить всё
var a: String;
begin
a:='йцу';
ShowMessage(IntToStr(Length(a)));
end;
Покажет цифру шесть! Такая картина наблюдается в Lazarus-0.9.26.1-18334-fpc-2.2.2-20090119-win32.exe и в Lazarus-0.9.27-18454-fpc-2.3.1-20090127-win32.exe
Проверял в Дельфях - в обоих случаях была тройка, как и положено.
Что это - ошибка Лазаря или компилятора? Или я чего-то не знаю про Паскаль?