注册 登录
编程论坛 VB6论坛

vb6 如何调用 vc 中char ** 参数

zllllllll 发布于 2021-06-19 17:18, 1461 次点击
vc导出函数
extern  "C" int __stdcall SmartCardWrite(char* strComInput,char* strInfo,char** strOutInfo,char** strComOutput);

strComInput、strInfo 为入参,
strOutInfo、strComOutput为出参

vb中改如何声明和调用?
1 回复
#2
风吹过b2021-06-20 10:30
不是按值还是地址的问题,是数据长度的问题。
chat  是单字节吧,对应vb6 里面是byte ,这个好说
带星号是地址吧,对c++不太熟,
传入的是地址?那就要显式按地址传入,不能按值传递,那样付过去就剩一个值了。
如果这样那就好写了,按地址传递byte 进去。或者写按值传递long,调用时加取地址命令。

传出,按地址吧,二个星号,数据地址的地址?一下转弯不过。
那你先按byte按地址传出试试,不行就 再定义一个long 变量,保存byte 的地址,然后再按地址传递进去试试。

在手机上回复的,写的有点乱。
1