var 
              s:string; 
              p:pchar; 
  begin 
       p:=@s[1]; 
       s:='new'+char(0); {以0结尾,可用pchar型指针} 
       label1.caption:=strpas(p); {new}请问这个strpas什么作用,  什么是pascal字符串

解决方案 »

  1.   

    StrPas 
    PChar转换为String
      

  2.   

    function StrPas(const Str:PChar):string;   
    //将PChar转换为String
      

  3.   


    pchar指向的数组会有变化吗,  strpas到底是对什么做的手脚。
      

  4.   

    strpas源码function StrPas(const Str: PChar): string;
    begin
      Result := Str;
    end;
      

  5.   

    Converts null-terminated string to an AnsiString (long string).UnitSysUtilsCategorybackward compatibility routinesDelphi syntax:function StrPas(const Str: PChar): string;C++ syntax:extern PACKAGE AnsiString __fastcall StrPas(const char * Str);DescriptionThis function is provided for backwards compatibility only. To convert a null terminated string to an AnsiString or native Delphi language string, use a typecast or an assignment.
      

  6.   

    关于你的什么是pascal字符串这个问题?我帮你搜了一下,答案如下:
        字符串是由字符组成的有穷序列。   
        为了使程序能够处理文字信息,Turbo Pascal特别引入了字符串类型,其值表示一个具有可变长度的字符序列。给你个链接仔细看看吧http://www.hfyz.net/teacher/foots/pascal/string.htm
      

  7.   

    就是转换一个PChar类型的字串为delphi中特有的string类型。
      

  8.   

    将以0结束(null结束)的字符串str转换成pascal格式的字符串。
      

  9.   

    看一下实现代码,一览无余
    其实楼上有兄弟已经说了,就是一个类型转换
    string是pascal/delphi风格的字符串,和C语言的字符串格式有所不同
      

  10.   

    当看到SysUtils里关于这个的源码,我无语了:
    function StrPas(const Str: PChar): string;
    begin
      Result := Str;
    end;