Требуется скопировать небольшую функцию с Java (Android Studio) на Delphi, для этого необходимо функцию эту переделать немного так как синтаксис отличается. Столкнулся с проблемой при редактировании, не понимаю что значат данные строки, прошу объяснить и написать как будут выглядеть строки в Delphi
Код в Java:
public static long get(byte[] bytes, int offset, int bytesCount) {
if (bytes.length == 0) {
throw new IllegalArgumentException("Empty array");
} else {
long result = 0;
for (int i = offset; i < offset + bytesCount; i++) {
result ^= (((long) bytes[i]) & 255) << ((((bytesCount - 1) + offset) - i) * 8);
}
return result;
}
}
Не понятна следующая строка:
result ^= (((long) bytes[i]) & 255) << ((((bytesCount - 1) + offset) - i) * 8);
Мои наработки на данный момент в Delphi (до данной строки):
function get(bytes: array of byte; offset,bytesCount: integer):LongInt;
var
i:integer;
begin
if (length(bytes) = 0) then begin
end else begin
result := 0;
for i := offset to (offset + bytesCount) do begin
Прошу помощи в переделке, спасибо!
Bitwise Operators
http://www.delphibasics.co.uk/RTL.asp?Name=shl
<<
- shl
http://docs.embarcadero.com/products/rad_studio/delphiAndcpp2009/HelpUpdate2/EN/html/devcommon/expressions_xml.html
^
- xor
&
- and
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
На проекте используется Spring Security, стандартная форма логинаСейчас еще нужно дабавить возможность авторизации через Azure AD(с помощью протокола...