Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
24. Dez 2008
Also wenn es an dem Int64 liegt, dann hilft ein einfaches Umdrehen des Operators nicht viel, denn dann müßtest du noch 'ne Vorzeichenkontrolle einbauen und dann je nach Vorzeichen anderes vergleichen ... oder halt UInt64 verwenden.
Oder doch solche Records wie in #16 beschrieben verwenden
Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
14. Dez 2008
wohl doch zu wenig geschlafen :wall:
Big-Endian > Großes Ende > und irgendwie war ih grad, laut der Übersetzung, der irrtümlichen Meinung das große zu letzt, also an höchster Stelle
na Gut, dann bleibt dieses aber dennoch in Windows so richtiger (Major als Letztes und nicht als Erstes)
2: (Build: Byte; Release: Byte; Minor: Byte; Major: Byte);
Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
14. Dez 2008
var t: record
case integer of
0: (B1, B2, B3, B4: Byte);
1: (L: LongWord);
end;
v.L := $12345678;
Edit1.Text := Format('$12345678 = L:$%x = B1:$%x B2:$%x B3:$%x B4:$%x',
);
$12345678 = L:$12345678 = B1:$78 B2:$56 B3:$34 B4:$12
Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
14. Dez 2008
falsche Umgebung?
Delphi/Windows ist doch BigEndian :gruebel:
ok, da inherited wohl in Linux? arbeitet, könnte es bei ihm zutreffen :stupid:
wie konnte man auch nur LittleEndian erfinden ... für TypeCasts ist BigEndian doch viel praktischer ^^
Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
14. Dez 2008
@inherited: sicher, daß du das so machst?
wir leben in einer BigEndian-Umgebung
2: (Build: Byte; Release: Byte; Minor: Byte; Major: Byte);
also der größte Wert zuletzt und hier ist Major das Größte
Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
14. Dez 2008
eben nicht richtig :warn:
// New = 3.9.0.0
// Current = 4.8.0.0
if NewMajor{3} <= Major{4} {=true} then
begin
if NewMinor{9} <= Minor{8} {=false} then
begin
...
Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
13. Dez 2008
@Hawkeye219: if UInt64(V1) <= UInt64(V2) then :angel:
PS: bei FNewVersion hätt ich gedacht, daß dieses True ist, wenn NewXYZ > XYZ wird und nicht bei <= :gruebel:
also insgesammt glaub ich, stümmt was bei der anfänglich genannten IF-Verschachtelung nicht
if NewMajor < Major then
begin
if (NewMajor = Major) and (NewMinor < Minor) then
begin
if (NewMinor = Minor) and...