AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Arbeiten mit PChar

Ein Thema von Gambit · begonnen am 28. Feb 2005 · letzter Beitrag vom 28. Feb 2005
Antwort Antwort
Seite 2 von 2     12   
Muetze1
(Gast)

n/a Beiträge
 
#11

Re: Arbeiten mit PChar

  Alt 28. Feb 2005, 15:39
Moin!

Die Funktion kann im Worst-Case Fall doppelt so lange Zeichenketten zurück geben, also:

Delphi-Quellcode:
procedure test(Const ASrcString: String);
var DestString: string;
begin
  SetLength(DestString, 2*Length(ASrcString));
  Translate(PChar(ASrcString), PChar(DestString), false);
  // Hier noch mit SetLength() den DestString auf die zurück gegebene Anzahl von zeichen kürzen...
end;
MfG
Muetze1
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#12

Re: Arbeiten mit PChar

  Alt 28. Feb 2005, 16:05
was genau ist ein "Worst-Case Fall" ? ich meine wieso koennen doppelt soviele zeichen zurückgegeben werden ?
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Gambit

Registriert seit: 28. Mai 2003
680 Beiträge
 
Delphi 7 Professional
 
#13

Re: Arbeiten mit PChar

  Alt 28. Feb 2005, 16:16
Zitat von Khabarakh:
Will Gambit es nicht einfach so ?
Delphi-Quellcode:
procedure test;
var srcString, DestString: string;
begin
  srcString:='a';
  DestString:='bb';
  Translate(PChar(srcString), PChar(DestString), false);
end;
Nene, so wollte ich es nicht, würde auch nicht funzen...

Ich würde viel jetzt viel lieber wissen, warum die Funktion nicht das tut was sie soll...
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#14

Re: Arbeiten mit PChar

  Alt 28. Feb 2005, 17:59
Zitat von Gambit:
Ich würde viel jetzt viel lieber wissen, warum die Funktion nicht das tut was sie soll...
Tja gute Frage. Aber ohne die Implementierung zu kennen, wird dir das wohl auch niemand sagen können. Aber: neue Frage, neuer Thread.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Oxmyx

Registriert seit: 21. Sep 2004
499 Beiträge
 
#15

Re: Arbeiten mit PChar

  Alt 28. Feb 2005, 18:07
Zitat von Binärbaum:
Man sollte den Speicher reservieren, bevor man etwas in den PChar schreibt.
Nicht, wenn man ein Stringliteral schon zur Kompilierzeit zuweise. Dann nicht. In allen anderen Fällen schon.
  Mit Zitat antworten Zitat
Gambit

Registriert seit: 28. Mai 2003
680 Beiträge
 
Delphi 7 Professional
 
#16

Re: Arbeiten mit PChar

  Alt 28. Feb 2005, 18:28
jepp und wenn ich anstelle von translate

OemToCharBuff(Pointer(S), Pointer(S), Length(S)); benutze, wo ich's mit der Speicherreservierung genauso handhaben muss, funzt es auch. Warum TDataSet.translate nicht funzt obwohl es genau das machen soll was OemToCharBuff macht, weiß ich auch nicht...
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:39 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