VC里面定义这样的函数 funname(char *str)现在要求我用delphi做动态链接库实现这样的功能
问题主要在数据类型上我查了一些资料,建议用pchar类型代替vc中的char *但是这个类型用到函数中就有问题了
VC里面如果函数funname对char *变量赋值后,函数结束这个内容还是存在的,因为传的是一个真正的指针
而delphi在函数里面对pchar变量赋值后,函数结束这个变量就没了不知各位大侠有什么好的解决方法?
问题主要在数据类型上我查了一些资料,建议用pchar类型代替vc中的char *但是这个类型用到函数中就有问题了
VC里面如果函数funname对char *变量赋值后,函数结束这个内容还是存在的,因为传的是一个真正的指针
而delphi在函数里面对pchar变量赋值后,函数结束这个变量就没了不知各位大侠有什么好的解决方法?
比如我刚才说的函数
function funname(str:pchar);
begin
str:=pchar('asdf');
end;
如果你定义一个pchar型全局变量x,
然后调用funname(x),
x的值并不会变成'asdf'啊
funname(var str:pchar); function funname(str:pchar);
var p:pChar;
begin
p:=strAlloc(5);
StrPCopy( P, '12345');
str:=p;
end;