![]() |
AW: Datentypen von String zu Byte und wieder zurück
Ja, Natürlich kann man nur auf ganze Bytes zugreifen und Delphi rundet immer auf.
Ein Boolean kennt auch 1x False und 255x True :stupid: Aber blöd wird es, wenn man die Bereichsprüfung mal aktiviert und dann der Typ zu klein deklariert ist. |
AW: Datentypen von String zu Byte und wieder zurück
Liste der Anhänge anzeigen (Anzahl: 1)
Das ist sogar noch witziger:
Delphi-Quellcode:
BreakPoint 1 wird 8x durchlaufen! BreakPoint 2 erwartungsgemäß nur 2x.
type
TSet = set of 0..3; procedure Main; var s: TSet; I: 0..3; begin s := [1,3]; for I in s do begin // <== BreakPoint 1 Writeln(I); // <== BreakPoint 2 end; end; // <== BreakPoint 3 Bei den Durchläufen vor dem ersten Writeln hat I nicht mal einen definierten Wert. |
AW: Datentypen von String zu Byte und wieder zurück
Leider bekomm ich es doch nicht ans laufen...
Wenn ich der Funktion feste Werte übergebe funktioniert sie wunderbar.
Code:
Wenn ich aber meine Buffer der Funktion übergebe kommt nichts aus ihr raus.
PBuf := Convert('00003FFFC000','00003FFFC000');
Code:
Könnt ihr mir sagen was ich da falsch mache?
BEGIN
PBuf1 := Copy(PBuf10,13,Length(PBuf10)-3); PBuf2 := Copy(PBuf20,13,Length(PBuf20)-3); if (length(PBuf1) = length(PBuf2)) then begin PBuf := Convert(PBuf1,PBuf2); PBufSend := PBuf; end; END; |
AW: Datentypen von String zu Byte und wieder zurück
Wie sind denn die PBuf.. deklariert und was sagt der Debugger?
|
AW: Datentypen von String zu Byte und wieder zurück
Ist alles als String deklariert
|
AW: Datentypen von String zu Byte und wieder zurück
Dann setze mal einen Haltepunkt und schau dir an was in den Strings, die du übergibst, drin steht.
|
AW: Datentypen von String zu Byte und wieder zurück
Zitat:
:glaskugel: Eventuell versuchst du ja auch nur die ersten 12 und die letzen 2 oder 3 Zeichen abzuschneiden? Dann ist das aber der falsche Befehl. |
AW: Datentypen von String zu Byte und wieder zurück
:? Ja das Stimmt.. Ich will von dem String die ersten 12 Zeichen wegschneiden und am Ende die letzten drei.
Ist es so besser?
Code:
BEGIN
Delete(PBuf10,0,12); Delete(PBuf20,0,12); Delete(PBuf10,length(PBuf10)-3,3); Delete(PBuf10,length(PBuf20)-3,3); if (length(PBuf10) = length(PBuf20)) then begin PBuf := Convert(PBuf10,PBuf20); PBufSend := PBuf; end; END; Es sind alle Buffer mit string deklariert. Die Strings sind alle 60 Zeichen lang. |
AW: Datentypen von String zu Byte und wieder zurück
Zitat:
|
AW: Datentypen von String zu Byte und wieder zurück
Delphi 2010 Windows 7
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:41 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