C Type用于保存不同类型的函数指针

时间:2017-09-23 14:41:32

标签: c types

鉴于以下各种变量

int *a = 0;
char *b = "string"

我可以将它们都放入void *hold;中 我找不到function pointers.

的方法
void (*hello)(char param1, char param2);
char (*another)();

甚至可以将这些2 different types存入一般one,例如void *?然后用铸造检索它们?

1 个答案:

答案 0 :(得分:2)

您可以将函数指针强制转换为任何其他函数指针类型并返回。只需选择void (*)(void)等目标类型即可。从C99标准:

  

指向一种类型的函数的指针可以转换为指向另一种类型的函数的指针,然后再返回;结果应该等于原始指针。