社区
语言基础/算法/系统设计
帖子详情
关于PChar中存在#0 的问题
bluepph
2019-01-12 09:02:04
#0一般做为结束符,但是最近要调用一个C的动态库。传的值中间就存在#0。估计是这个原因导致调用动态库一直报错。
大家遇到这个问题一般如何解决的?
...全文
791
5
打赏
收藏
关于PChar中存在#0 的问题
#0一般做为结束符,但是最近要调用一个C的动态库。传的值中间就存在#0。估计是这个原因导致调用动态库一直报错。 大家遇到这个问题一般如何解决的?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
虎子8
2019-01-29
打赏
举报
回复
换个类型或者 继续用pchar把内容base64一下
sazhufa
2019-01-14
打赏
举报
回复
一定要先搞清楚动态库如何使用传入参数。
如果只有一个单纯的字符指针参数, 那么遇到#0就中止很正常。
解决方法是: 先确定dll导出函数的定义,然后review代码看看有没有调用问题(参数个数、类型、顺序 三个方面)
doloopcn
2019-01-13
打赏
举报
回复
应该是你的调用方法有问题
DELPHI调用C一般都可能通过BUFF,你的程序在读BUFF的时候读的字节数不对,就有可能把#0读进来了
试试通过String数组解决:
var S:AnsiString;
...
Result:='';
for i:=1 to Length(S) do
begin
if Ord(S[i])<>0 then
Result:=Result+S[i]
else
Break;
end;
日立奔腾浪潮微软松下联想
2019-01-13
打赏
举报
回复
只能说你的参数传入就是有问题的...
BlueStorm
2019-01-12
打赏
举报
回复
可以改为传指针,例如: @str[1]
zipfile.dll或者myzip.dll的下载解压缩dll
=0 压缩文件
中
未包含任何文件 >0 解包的文件数量 说明 : 同名文件将自动被替换(overwrite) 2. Function MyZip_ExtractFile(ZipFile,srcName,DstName:
pc
har
):integer;stdcall; 功能 : 从ZipFile...
MyZip.dll 压缩 解压缩
=0 压缩文件
中
未包含任何文件 >0 解包的文件数量 说明 : 同名文件将自动被替换(overwrite) 2. Function MyZip_ExtractFile(ZipFile,srcName,DstName:
pc
har
):integer;stdcall; 功能 : 从ZipFile
中
将由...
pc
har
怎么用c语言定义,delphi
中
pc
har
、c
har
、string的定义与区别
C
har
只占一字节的空间,而
Pc
har
保存的是一个指针,在现在32位的系统
中
占有1个指针字节的大小。type
PC
har
=^C
har
;
PC
har
类型是一个指向C
har
的指针,并使用Delphi的扩展语法.它也能够作为一个String或者是...
delphi
中
pc
har
、c
har
、string的定义与区别
C
har
是单个字符;...C
har
只占一字节的空间,而
Pc
har
保存的是一个指针,在现在32位的系统
中
占有1个指针字节的大小。type
PC
har
=^C
har
;
PC
har
类型是一个指向C
har
的指针,并使用Delphi的扩展语法.它也能够作...
Delphi
中
pC
har
c
har
String的关系及转化
C
har
是单个字符;...C
har
只占一字节的空间,而
Pc
har
保存的是一个指针,在现在32位的系统
中
占有1个指针字节的大小。 type
PC
har
=^C
har
;
PC
har
类型是一个指向C
har
的指针,并使用Delphi的扩展语法.它也
语言基础/算法/系统设计
16,748
社区成员
33,247
社区内容
发帖
与我相关
我的任务
语言基础/算法/系统设计
Delphi 语言基础/算法/系统设计
复制链接
扫一扫
分享
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章