1
我想實現這樣的事情:Ç - 傳遞未知PARAMS功能到另一個功能,並調用它
void sum(int a, int b){ printf("result: %d", a+b); }
void callFunc(void (*funct)(...), ...)
{
va_list ars;
va_start(ars, funct);
funct(ars);
va_end(ars);
}
int main()
{
callFunc(sum, 2,3);
return 0;
}
但是,這並不工作,由於需要兩個va_list
S,爲funct
傳遞參數和參數。但是,即使我試圖通過總和功能,它說:error: invalid conversion from 'void (*)(int, int)' to 'void (*)(...)'
那麼如何使這個工作好老C型?
,如果你想將它保留到C你爲什麼標籤這個C++? – Cornstalks