Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Sinn von chr(0) ? (https://www.delphipraxis.net/135209-sinn-von-chr-0-a.html)

citybreaker 6. Jun 2009 17:18


Sinn von chr(0) ?
 
Hallo!

Immoment bin ich dabei auf der Arbeit ein altes Programm auf vordermann zu bringen.
Von Basic zu Delphi. Jetzt bin ich über folgenden abschnitt gestolpert und Frage mich über den Sinn.

Code:
' --- Out Bilden ---
out$ = CHR$(0) + CHR(pgranz - 1) + CHR$(0) + CHR$(0);
out$ = out$ + STRING(pgranz * 12, CHR$(0));
Wenn ich jetzt Delphi chr(0) und ich mir das ganze anzeigen lasse, wird mir ein leeres
Label angezeigt.

Label1.Caption := Chr(0);

Ist überhaupt ein zeichen der 0 zugewiesen? Versteh nicht ganz, ob das da oben sinn macht.

mkinzler 6. Jun 2009 17:23

Re: Sinn von chr(0) ?
 
Ist Stringendetrenner. Scheint eine Art Stringarray zu sein

Apollonius 6. Jun 2009 17:25

Re: Sinn von chr(0) ?
 
In C und C-kompatiblen Schnittstellen dient das Zeichen #0 dazu, das Ende eines Strings zu markieren. Deshalb siehst du im Label auch nichts. Manche Funktionen verwenden das Zeichen aber auch als internes Trennzeichen (zum Beispiel kann man so eine Liste von Strings kodieren: 'erster String'#0'zweiter String'#0'letzter String'#0#0). Wozu das #0-Zeichen in deinem Beispiel dient, weiß ich nicht. Es ist allerdings gut möglich, dass der String später als Binärdaten interpretiert und irgendwohin geschrieben wird (z.B. ins Netzwerk).

citybreaker 6. Jun 2009 17:33

Re: Sinn von chr(0) ?
 
Der String wird später in Hex umgewandelt und über eine Com Schnitstelle versendet.
Ich müsste ja aber dann doch zumindest das passende Zeichen von chr(pgranz-1) sehen oder nicht?

Jakob Ullmann 6. Jun 2009 17:58

Re: Sinn von chr(0) ?
 
IMHO nicht, weil ja nach dem ersten #0 schon Schluss sein sollte. :zwinker: Und das Label hat ja auch kein Interesse daran, zu wissen, dass du das dann über die Com-Schnittstelle versenden möchtest.

citybreaker 6. Jun 2009 18:12

Re: Sinn von chr(0) ?
 
Ok danke euch erstmal. Ich werd mal weiter übersetzten und gucken, ob ich später
das rausbekomme, was rauskommen soll. :-D


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:51 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz