通常咱们在写c代码的时候,可能心愿能在构造体上定义函数,然而c语言中不反对间接定义函数,咱们能够通过定义函数指针的形式来实现
// 上面是一个简略的实例#include <stdio.h>#include <stdlib.h> /* 定义一个构造体,外面有三个成员,是三个函数指针 ,后面千万不要加static,这里并没有分配内存*/struct prt_fn {    int (*add) (int a, int b);    int (*sub) (int a, int b);    int (*mult) (int a, int b);};static int add(int a, int b){    return a + b;}static int sub(int a, int b){    return a - b;}static int mult(int a, int b){    return a * b;}int main(){    int a = 10, b = 5;    // 初始化构造体    struct prt_fn pfn = { add, sub, mult };    printf("a + b = %d\n", pfn.add(a, b));    printf("a - b = %d\n", pfn.sub(a, b));    printf("a * b = %d\n", pfn.mult(a, b));    return 0;}