21.4 怎样调用一个由 char * 指针指向函数名的函数?

最直接的方法就是维护一个名字和函数指针的列表:
    int one_func(), two_func();
    int red_func(), blue_func();

    struct { char *name; int (*funcptr)(); } symtab[] = {
        "one_func", one_func,
        "two_func", two_func,
        "red_func", red_func,
        "blue_func",blue_func,
    };
然后搜索函数名, 就可以调用关联的函数指针。参见问题 2.13, 18.13 和 19.35

参考资料: [PCS, Sec. 11 p. 168]。

翻译朱群英、孙云, LaTeX2HTML 编译 朱群英 (2005-06-23)