![]() |
PChar zu String!
Hallo!
Wie wandelt man einen PChar in einen STring um? ICh bin schon langsam am verzweifeln, habe schon vieles ausprobiert! Danke im voraus! Gruß 1PM |
Re: PChar zu String!
Im Notfall einfach die PChar Variable als String casten.
Delphi-Quellcode:
ansonsten empfehle ich die Funktion StrPas
strVar := String(pchVar);
Delphi-Quellcode:
...:cat:...
strVar := StrPas(pchVar);
|
Re: PChar zu String!
HEy Sakura!
Danke für die Antwort, fkt. aber leider nicht!
Code:
function datetoday(payoffdayOP: integer): string;
begin case payoffdayOP of 1 : Result:='Montag'; 2 : Result:='Dienstag'; 3 : Result:='Mittwoch'; 4 : Result:='Donnerstag'; 5 : Result:='Freitag'; 6 : Result:='Samstag'; 7 : Result:='Sonntag'; end; if (payoffdayOP>7) or (payoffdayOP<1) then Result:='Ruhetag'; end; var timeOP1, timeop2: string; timeOP1:=strpas(datetoday(payoffdayxy)); timeOP2:=strpas(datetoday(payoffday)); Button := Application.MessageBox(timeop1+' '+timeop2 ,'Abfrage', 36); Gruß 1PM |
Re: PChar zu String!
ich denke in Deinem Beispiel ist das StrPas einfach zuviel, da die Funktion datetoday ja auch schon String zurückliefert. Also sollte eigentlich keine weitere Typumwandlung erforderlich sein!
Und noch ein Tip für Deine case-Anweisung: Wenn Du zusätzlich noch einen else-Zweig einbaust, kannst Du Dir die if-Abfrage sparen. |
Re: PChar zu String!
Vielleich so?
Code:
var
timeOP1, timeop2: string; begin timeOP1:=datetoday(payoffdayxy); timeOP2:=datetoday(payoffday); Button := Application.MessageBox(strpas(timeop1)+' '+strpas(timeop2) ,'Abfrage', 36); end; oder Button := Application.MessageBox(PChar(timeop1)+' '+Pchar(timeop2) ,'Abfrage', 36); |
Re: PChar zu String!
Die Messagebox erwartet eine PChar und keinen String!
Delphi-Quellcode:
Und nimm statt der 36 mal die Konstante, sonst weißt du in zwei Wochen nicht mehr, was die macht / anzeigt.
timeOP1 := datetoday(payoffdayxy);
timeOP2 := datetoday(payoffday) Button := Application.MessageBox(PChar(timeop1+' '+timeop2) ,'Abfrage', 36); |
Re: PChar zu String!
Zitat:
Delphi-Quellcode:
:roll: ;) (hab den Code aus dem Kopf geschrieben, da ich momentan kein Delphi zur Hand hab, aber soweit ich mich erinnern kann macht die Funktion StrPas auch nichts andres als einen einfachn Cast auf String!)
function StrPas(p: Pchar): String;
begin Result := String(p); end; |
Re: PChar zu String!
:freak: :freak: :freak: MessageBox(PChar, PChar, 36); :freak: :freak: :freak:
Das war zu viel Alk gestern :? DAnke für eure Hilfe |
Re: PChar zu String!
Zitat:
Delphi-Quellcode:
...:cat:...
function StrPas(const Str: PChar): string;
begin Result := Str; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:54 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 by Thomas Breitkreuz