![]() |
Frage zu Zahlen
Hallo,
vielleicht ein wenig dumm die Frage aber was bedeutet eigentlich folgendes: ringbuffer: array[0..$ff0] of char; ringbuffer := #$00+#$14; Was bedeutet hier das # vor den Hexwerten? Ich denke mal das das Ergebnis doch $14(0x14) ist? Was wird dann eigentlich geändert? Nur die Position 0 des Arrays? Ocrana |
Re: Frage zu Zahlen
Das "#" macht das gleiche wie die Funktion
![]() Allerdings ist es komisch gleich an den Anfang eines CharArrays (ähnlich dem Typ String) einen #00 zu schreiben, da das in der Regel das Ende einer Zeichenkette signalisiert :gruebel:. \\edit: Das "+" ist hier im übrigen nicht der arithmetische Operator der Zahlen Addiert, sondern da es Character sind ist das hier ein Verkettungsoperator der die Chars hintereinander schreibt. |
Re: Frage zu Zahlen
Hallo,
ja aber es ist ja ein $00 in einer addition, also ich vermute mal das es dann $14 oder char(0x14) einfügt. Aber geh ich richtig in der Annahme, wei Du schreibst, das er das dann an Position 0 einfügt? Ocrana |
Re: Frage zu Zahlen
Zitat:
\\noch ein Edit: Da ein Array of Char dem Typ String ähnlich ist, kann man genau so wie einem String zuweisen:
Delphi-Quellcode:
var
s: String; c: array[0..15] of Char; begin s := 'Hallo'; s := #$40 + #$50; s := chr(30) + chr(25); c := 'Hallo'; c := #$40 + #$50; c := chr(30) + chr(25); end; ^^ geht alles! |
Re: Frage zu Zahlen
Hi,
öhmmm...man merkt wohl das ich ein blondchen bin ;) Ok nochmal für langsamme: Ich habe: ringbuffer := #$00+#$14; in einem Array of chars. Ich habe vemutet das er an den Anfang des Arrays dann #$00+#$14 = #$14 einfügt. Das ist falsch? Macht er womöglich rungbuffer[0] := char(0x00); und ringbuffer[1] := char(0x14)??? Ocrana |
Re: Frage zu Zahlen
Zitat:
Nur dass in Delphi Hexwerte mit "$", und nicht mit "0x" wie in C angegeben werden ;) |
Re: Frage zu Zahlen
Hallo,
ja ich komme aus der C Ecke :) Also ist: ringbuffer := #$00+#$14; das Geliche wie ringbuffer := #$00#$14??? Ocrana |
Re: Frage zu Zahlen
Zitat:
Zitat:
\\edit: Man kann auch ganz ekelig werden und sowas machen:
Delphi-Quellcode:
:mrgreen:
ringbuffer := 'a'+chr(10)+#13#$a7+'h8'+chr($5b);
|
Re: Frage zu Zahlen
ja die C Leute stinken immer, ist der Angstschweiss ;-)
Aber ist schon komisch das es bei Delphi immer so viele Schreibweisen gibt. Irgendwie nicht einheitlich und das in 20 Zeilen.....muss ich mich echt dran gewöhnen. Ocrana |
Re: Frage zu Zahlen
Zitat:
Zitat:
Für gewöhlich nimmt man für "normale" Zeichen die auf der Tastatur sind die Variante in Hochkommata ('Hallo'), und für nicht schreibbare Steuerzeichen entweder als Funktion chr(wert) bzw. als Cast char(wert) (eigentlich gleichwertig), oder eben kürzer mit dem "#". Das Konstrukt mit # und einer Hexzahl sieht dann zugegebenerweise abenteuerlich aus ("#$wert", naja *g*). Mir war bis dato sogar nie richtig bewusst, dass es da ja tatsächlich mindestens 4 Schreibweisen gibt... sowas :shock:. Und trotzdem ist Delphi ästhetischer im Codebild *harharr* Und ich geh jetzt endlich mal schlafen... ist ja immerhin schon früh :) Nachti, dizzy |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:59 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