使用PChar和string类型时的内存分配技术

    string是自动管理内存大小和分配,而Pchar需要手动分配内存手动释放,显然string要比pchar的使用要方便一些,但是win api的许多参数需要pchar类型,所以应该学会pchar的使用技术。

   下面的例子演示了使用PChar和string类型时的内存分配技术:

var

P1 , P2 : PChar ;

S1 , S2 : string ;

begin

P1 : = StrAlloc ( 64 * SizeOf ( Char ) ) ; / / P1指向一个分配了63个字符的缓冲区

StrPCopy(P1,'Delphi 5'); / /复制一组字母到P 1

S1:='Developer's Guide'; / /在S1中放几个字母

P2 : = StrNew ( PChar ( S1 ) ) ; / / P2指向S1的备份

StrCat ( P1 , P2 ) ; / /连接P1和P2 

S2:=P1;                                  //S2现在为'Delphi 5 Developer's Guide’

StrDispose ( P1 ) ; / /清除P1和P2的缓冲区。

StrDispose ( P2 ) ;

end.

你可能感兴趣的:(String类)