DelphiFAQ Home Search:
General :: Programming :: Delphi :: Strings
Algorithms for string handling problems, implemented in Delphi but useful for any procedural language.


This list is sorted by recent document popularity (not total page views).
New documents will first appear at the bottom.

Featured Article

Casting a (long) String to a PChar

There are three ways to cast a String to a pchar:

  1. typecast as pchar
  2. take the address of the first character:
  3. and typecast the string to a generic pointer.

For a comparison, read the comments in the following code snippet:

   s : String; // long
   p : PChar;
   // Typecast as pchar 
   // Typecasting a string to a PChar returns the address of the first char
   // or if the string was empty it returns the address of a null. 
   // Result p is guaranteed to be non-nil!
   p := PChar(s);
   // Take address of the first character
   // this forces a call to UniqueString() to ensure that the pchar returned
   // points to a unique string only referenced by s and not by another string:
   // Typecast the string to an untyped pointer
   // The simplest and fastest solution; no hidden function call is generated.
   p := pointer(s);

Generated 0:01:13 on Feb 27, 2020