关于调用DLL中C函数中的var_list参数的正确调用方法?解决思路

关于调用DLL中C函数中的var_list参数的正确调用方法?
请教个问题,在Delphi调用C写的DLL函数时,函数中有可变参数,
例如:int add(int a, ...);
在Delphi中如何向其正确传递参数?可以假设参数都为整数

------解决方案--------------------
a : array of Integer;
------解决方案--------------------
delphi有一个关键字:varargs专门用于可变参数处理的,我的一个测试:
DLL程序:
C/C++ code

//---------------------------------------

#include <windows.h>

#pragma argsused
int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason, void* lpReserved)
{
        return 1;
}
//---------------------------------------
extern "C" __export  int testdll(int a,...)
{
   va_list ap;
   int arg;
   va_start(ap, a);
   int total =0;
   for(int i=0;i<a;i++)
    {
       arg = va_arg(ap,int);
       total += arg;
     }

   va_end(ap);
   return total;
}