![]() |
Umwandlung PChar -> Integer
Hallo,
hab, warum auch immer, ein kleines Prob mit dieser Umwandlung von Pchar in Integer. Benutze ich
Delphi-Quellcode:
dann bekomme ich 1426..... zurück.
Integer(Buffer)
Benutze ich
Delphi-Quellcode:
bekomme ich die Fehlermeldung
StrToInt(Buffer)
Delphi-Quellcode:
Danke!
Der angegebene Wert ''' ist kein gültiger Integerwert.
|
Re: Umwandlung PChar -> Integer
Was hast du vor? Was steht im PChar? PChar ist ein c-String also einen Zeiger auf einen String (genauer gesagt ein Zeiger auf das 1. Zeichen einer Zeichenkette)
|
Re: Umwandlung PChar -> Integer
Hallo,
nochmal anders ausgedrückt: im ersten Fall findet ein type cast von Pointer nach Integer statt, im zweiten Fall findet eine automatische Wandlung von PChar nach String statt. Eine Zahl scheint der String nicht zu repräsentieren. Gute Nacht |
DP-Maintenance
Dieses Thema wurde von "Phoenix" von "Programmieren allgemein" nach "Sonstige Fragen zu Delphi" verschoben.
Hier gehts definitiv um Delphi |
Re: Umwandlung PChar -> Integer
Ich lasse mir werte aus php zurückgeben und von einer dll an das Prog senden. Diese werte sind halt eigentlich Integers. Kann's auch mit Strings machen, aber so wäre es halt sauberer
|
Re: Umwandlung PChar -> Integer
Das kannst du mit einem Typecast erreichen.
Delphi-Quellcode:
Eigentlich sollte es auch reichen
MyInteger := StrToInt( String(MyPCharInt) );
Delphi-Quellcode:
so auf zu rufen. :gruebel:
MyInteger := StrToInt( MyPCharInt );
|
Re: Umwandlung PChar -> Integer
Guten Morgen,
wenn eine Integer in dem Speicherbereich abgelegt wurde, auf den Buffer zeigt, dann muss nur der Zeiger anders interpretiert werden:
Delphi-Quellcode:
Freundliche Grüße
IntToStr( PInteger( Buffer )^ );
|
Re: Umwandlung PChar -> Integer
Danke!
Werd's mal ausprobieren! Schönen Sonntag noch! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:24 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