Autor Beitrag
DracoBlue
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 26



BeitragVerfasst: Fr 11.07.03 14:48 
ok,

also Wenn ich in delphi eine Variable vom Typ Single vereinbare, weiss ich, dass diese 4 Bytes groß ist und einen Wert hat.

Ich möchte jetzt aber genau diese 4 Bytes auslesen, als einzele Bytes.

Mfg, DracoBlue

PS : Sonst muss ich den SingleWert immer irgendwie vereinfachen, dass er auf einen 4Byte Integerwert passt und ihn danach wieder zu einem SingleWert machen durch Multiplizieren und Runden, und das ist VIEL zu umständlich.


Zuletzt bearbeitet von DracoBlue am Fr 11.07.03 15:52, insgesamt 1-mal bearbeitet
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Fr 11.07.03 14:56 
Das ist doch wohl ´n Witz, oder?
Zitat:
Siehe Thema!


Was ist das für ein Single-Wert?
Woher kommt er?
Bist du sicher, dass es ein Single-Wert ist?

usw. - Alles Fragen, die IMHO für die korrekte Beantwortung notwendig sind. Ansonsten wird hier in zig Postings sinnlos rumgeraten, bis du am Schluss dann (endlich) verrätst, dass es sich um einen Fall handelt, an den bis dahin keiner gedacht hat.

Sorry, aber ich bin für´s Löschen von solchen Beiträgen.
Wenn du dein erstes Posting bitte umformulierst, darf ein Mod dies hier gern entfernen.
mortus
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 27



BeitragVerfasst: Fr 11.07.03 15:23 
naja vielleicht meinst du ja sowas hier:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
function GetSingleBytes(sWert: Single): string;
type
 PByteArray = ^TByteArray;
 TByteArray = array[0..3of Byte;

var
 pByte:   PByteArray;
 tByte:   ^Byte;
 Counter: Integer;

begin
        tByte:=@sWert;
        result:='';

        for counter:=0 to SizeOf(Single)-1 do
        begin
         result:=result+IntToHex(tByte^,2)+' ';
         Inc(tByte,sizeof(Byte));
        end;

        // oder so :

        pByte:=@sWert;
        result:='';
        for counter:=Low(pByte^) to High(pByte^) do
        result:=result+IntToHex(pByte^[counter],2)+' ';
end;


Moderiert von user profile iconTino: Delphi-Tags hinzugefügt.
DracoBlue Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 26



BeitragVerfasst: Fr 11.07.03 15:27 
thx, das hab ich gesucht!

Mfg, DracoBlue