vc中输出数组的函数设计如下:
float myarray[3]={1,2,3};
extern "C" _declspec(dllexport) float *exportarray(int size){//extern "C" _declspec(dllexport)float arraytemp[]

for (int i=0;i<size;i++)
myarray[i]=myarray[i]+3; return myarray;
}怎么设计Delphi里接收返回数组的函数?

解决方案 »

  1.   

    这个函数不标准,不是按照WIN API协议书写的,API函数不可以返回数组、指针之类的类型,这种类型要用参数方式传递。
    当然,你要是愿意用汇编方式饿搞也可以,可读性可比加密算法了。
      

  2.   

    还有,_declspec这种定义,应该对应DELPHI的cdecl,也不是API协议,应该用stdcall协议,请载C手册里面找相应的协议。