![]() |
AW: Datentypen von String zu Byte und wieder zurück
Der zweite Operand ist ein Byte, welches zusätzlich maskiert ist.
Byte(-1) -> 255 (255 mod 32) -> 31 (Longword(a) shr -1) -> (a shr 15) Das funktioniert also nicht, abgesehen davon müsste die Maske für B $2 sein. |
AW: Datentypen von String zu Byte und wieder zurück
So kann es funktionieren und ist übersichtlich:
Delphi-Quellcode:
for i := 31 downto 0 do
begin Result := Result shl 1; Result := Result or ((B shr i) and $1); Result := Result shl 1; Result := Result or ((A shr i) and $1); end; |
AW: Datentypen von String zu Byte und wieder zurück
Richtig müsste es heißen: (Longword(a) shr -1) -> (a shr 31)
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:34 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz