函数是: int CC(int ID,
char* CODE1,
char* CODE2,
int* CODE3,
char* CODE4); safecall;
对方给出的文档中说明CODE3,CODE4是双向参数,既是入参也是出参
程序应该如何写才能调用啊?小弟第一次做这种类型的接口,请大家多多指教。
6 个解决方案
#1
定义成byte[],首先在C#初始化好了,然后传进去就可以了。
#2
可以给段实例代码么?第一次搞这样的东西,感谢啊
#3
比如
byte[] buffer1 = new buffer[256];
byte[] buffer2 = new buffer[256];
int result = CC(ID, "string1", "string2", buffer1, buffer2);
byte[] buffer1 = new buffer[256];
byte[] buffer2 = new buffer[256];
int result = CC(ID, "string1", "string2", buffer1, buffer2);
#4
LS的答案可以实现,但是按.NET一向的做法,如果未知长度的CHAR指针传入的话,为了安全起见,MS是推荐使用StringBuilder作为参数传入的.
#5
#6
用ref关键字就可以。
#1
定义成byte[],首先在C#初始化好了,然后传进去就可以了。
#2
可以给段实例代码么?第一次搞这样的东西,感谢啊
#3
比如
byte[] buffer1 = new buffer[256];
byte[] buffer2 = new buffer[256];
int result = CC(ID, "string1", "string2", buffer1, buffer2);
byte[] buffer1 = new buffer[256];
byte[] buffer2 = new buffer[256];
int result = CC(ID, "string1", "string2", buffer1, buffer2);
#4
LS的答案可以实现,但是按.NET一向的做法,如果未知长度的CHAR指针传入的话,为了安全起见,MS是推荐使用StringBuilder作为参数传入的.
#5
#6
用ref关键字就可以。