源码如下
#include <stdio.h>
#include <unistd.h>
struct A
{
int (*read)(int a, int b);
int (*write)(int a, int b);
int (*ioctl)(int a, int b);
};
int sn7325_read(int a, int b)
{
printf("%d %d\n", a, b);
}
int sn7325_write(int a, int b)
{
puts("333");
}
int main(int argc, char **argv)
{
struct A a =
{
//对结构体部分成员变量的赋值
.read = sn7325_read, .write = sn7325_write, //最后一个","可要可不要
//或者采用下面的赋值方法
read : sn7325_read,
write : sn7325_write, //最后一个","可要可不要
};a.read(2, 3);
return 0;
}