求救:关于函数返回值的问题.

sunon 2002-11-11 12:58:29
TInfo = record
FileName : PChar;
Description : PChar;
Count : PChar;
end;

我有一个函数返回值为TInfo类型.但附值后返回的值中有乱码.

var info:Tinfo;

info.filename := pchar(filename);
info.description := pchar(description);
info.count := pchar(count);
...全文
28 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
newyj 2002-11-13
  • 打赏
  • 举报
回复
dll 中用string 麻烦啊,发布时别忘了带borland的dll,
cnsuyong 2002-11-12
  • 打赏
  • 举报
回复
正如楼上所言,问题出在没有分配内存。显然你的数据类型如果用string就不会有问题了,因为使用指针还得注意释放内存。
sunon 2002-11-12
  • 打赏
  • 举报
回复
问题已解决.把PChar 改成 String 类型了.多谢各位.
sunon 2002-11-12
  • 打赏
  • 举报
回复
问题就在我现在 Info 变量是一个函数的返回值,如何释放内存?(我这个函数在DLL中).
newyj 2002-11-11
  • 打赏
  • 举报
回复
getmem(info.filename,length(filename)+1);
strpcopy(info.filename,filename);
sunon 2002-11-11
  • 打赏
  • 举报
回复
中英文乱码都有.请求帮助.
ahpei 2002-11-11
  • 打赏
  • 举报
回复
中文乱码?那你用PwideString,也是指针型.

16,748

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧