В Delphi до 2009 года (земля ANSI) вы могли использовать Ord
и Chr
для преобразования символа в байт и наоборот. Это было хорошо, например, когда вам нужно было использовать символ как байт:
var
ch: char;
begin
ch:= chr(ord(ch1) xor ord(ch2));
end;
Очевидно, что в новых Delphis символы больше не байт, а два. Безопасно ли тогда делать приведение типа:
var
ch: char;
begin
ch:= Char(integer(ch1) xor integer(ch2));
end;
чтобы получить те же результаты? Тесты, которые я делал до сих пор, работают нормально, даже когда используются кириллические и арабские символы, но вы никогда не знаете.