
va_list定义的不过是char*。
因为你传的参数不是一种类型,而是有int也有double,需要区别类型,如printf利用%d,%f这些来区分哪个参数是什么类型。
针对你现在的参数,这样输出就行了:(换了参数类型就不行)
for(i=0;i
{
if ( i == 1 )
printf("%f\n",va_arg(ptr,double));
else
printf("%d\n",va_arg(ptr,int));
}

va_list定义的不过是char*。
因为你传的参数不是一种类型,而是有int也有double,需要区别类型,如printf利用%d,%f这些来区分哪个参数是什么类型。
针对你现在的参数,这样输出就行了:(换了参数类型就不行)
for(i=0;i
{
if ( i == 1 )
printf("%f\n",va_arg(ptr,double));
else
printf("%d\n",va_arg(ptr,int));
}