Maw*_*awg 14 c function-pointers
我已经宣布了 typedef void (*DoRunTimeChecks)();
如何将其存储为结构中的字段?我该如何分配?我如何调用fn()?
Car*_*rum 18
就像你在任何其他领域一样把它放进去:
struct example {
int x;
DoRunTimeChecks y;
};
void Function(void)
{
}
struct example anExample = { 12, Function };
Run Code Online (Sandbox Code Playgroud)
要分配到该字段:
anExample.y = Function;
Run Code Online (Sandbox Code Playgroud)
要调用该函数:
anExample.y();
Run Code Online (Sandbox Code Playgroud)
#include <stdio.h>
typedef void (*DoRunTimeChecks)();
struct func_struct {
DoRunTimeChecks func;
};
void function()
{
puts("hello");
}
int main()
{
struct func_struct func_struct;
func_struct.func = function;
func_struct.func();
return 0;
}
Run Code Online (Sandbox Code Playgroud)