Moin.
Hier ein kurzes Code-Schnipsel, anschlie0end die Frage:
type
TAdr = record
case boolean of
false: (a, b, c, d: byte);
true : (lw: longword)
end;
var
ip : TAdr;
erg: longword;
begin
with ip do begin
a:=1; b:=2; c:=3; d:=4
end;
erg:=ip.a*256*256*256+ip.b*256*256+ip.c*256+ip.d;
Wenn ich nun ip.lw mit erg vergleiche, komme ich keineswegs auf das gleiche Ergebnis (67305985 gegenüber 16909060).
Wo liegt der Fehler?
Ein grübelnder Christian
Hier ein kurzes Code-Schnipsel, anschlie0end die Frage:
type
TAdr = record
case boolean of
false: (a, b, c, d: byte);
true : (lw: longword)
end;
var
ip : TAdr;
erg: longword;
begin
with ip do begin
a:=1; b:=2; c:=3; d:=4
end;
erg:=ip.a*256*256*256+ip.b*256*256+ip.c*256+ip.d;
Wenn ich nun ip.lw mit erg vergleiche, komme ich keineswegs auf das gleiche Ergebnis (67305985 gegenüber 16909060).
Wo liegt der Fehler?
Ein grübelnder Christian
Comment