1.函数指针
#include <stdio.h>
static int first_drv_open()
{
printf("first_drv_open\n");
return 0;
}
static int first_drv_read()
{
printf("first_drv_read\n");
return 0;
}
struct file_operations_imitative {
int (*open) ();
int (*read) ();
int (*write) ();
};
int Func();
int (*p) ();
int main()
{
p = Func;
p();
struct file_operations_imitative my_operation;
my_operation.open = first_drv_open;
my_operation.read = first_drv_read;
my_operation.open();
my_operation.read();
return 0;
}
int Func()
{
printf("%s %d\n",__FUNCTION__, __LINE__);
return 0;
}
