delphi向C++传递结构指针的问题
在delphi中调用一个c++写的DLL,其中需要传递一个结构指针如下:
struct info
{
a char[10],
b char[10]
}
现在,我在delphi中定义一个记录类型如下:
type = record
a string(10);
b string(10);
end;
现在我要传递参数,使a的值为‘123456’,问题是:我怎么操作才能让a是空结束的串,而不是delphi的短串?我已经使用了{$H+}编译选项。
问题点数:50、回复次数:8Top
1 楼sxqwhxq(步青云)回复于 2005-05-07 18:53:25 得分 10
全用PChar代替string。Top
2 楼ahalf(ahalf)回复于 2005-05-07 19:35:37 得分 0
结构怎么定义?数据怎么赋值?举个例子Top
3 楼vpoor(kIngAge)回复于 2005-05-11 13:14:52 得分 10
type = record
a : array[1..10] of Char;
b : array[1..10] of Char;
end;
PS : fillcharTop
4 楼prgliker(与美女无缘)回复于 2005-05-13 12:16:19 得分 10
type
TT = packed record
a: pchar;
b: Pchar;
end;
PS: ^TTTop
5 楼Microsnow(冰火)回复于 2005-05-13 12:47:56 得分 10
type
Info = packed record
a: PChar;
b: PChar;
end;
pInfo = ^Info;Top
6 楼kiboisme(蓝色光芒)(www.1284.net/)(软件开发机器人for delphi)回复于 2005-05-13 13:15:04 得分 10
vpoor(kIngAge)Top
7 楼ahalf(ahalf)回复于 2005-05-20 12:12:54 得分 0
按你们说得做,dll收到的参数都不对。。。Top
8 楼ahalf(ahalf)回复于 2005-06-24 09:03:11 得分 0
最后实在没办法了,我把串的字节一个一个读出来,写成空结束串。
哎,delphi。。。。。。。Top




