readline的使用

来源:互联网 发布:网络直播需要什么设备 编辑:程序博客网 时间:2024/05/22 16:43

readline除了可用用于从流中读取一行以外,可通过自定义函数,增加自定义处理过程

参考http://cnswww.cns.cwru.edu/php/chet/readline/readline.html#SEC23

通过对以下类型函数指针定义的指针接口指定对应的自定义函数实现

typedef int rl_command_func_t (int, int);

typedef char *rl_compentry_func_t (const char *, int);

typedef char **rl_completion_func_t (const char *, int, int);

typedef char *rl_quote_func_t (char *, int, char *);

typedef char *rl_dequote_func_t (char *, int);

typedef int rl_compignore_func_t (char **);

typedef void rl_compdisp_func_t (char **, int, int);

typedef int rl_hook_func_t (void);

typedef int rl_getc_func_t (FILE *);

typedef int rl_linebuf_func_t (char *, int);

typedef int rl_intfunc_t (int);
#define rl_ivoidfunc_t rl_hook_func_t
typedef int rl_icpfunc_t (char *);
typedef int rl_icppfunc_t (char **);

typedef void rl_voidfunc_t (void);
typedef void rl_vintfunc_t (int);
typedef void rl_vcpfunc_t (char *);
typedef void rl_vcppfunc_t (char **);
具体各个接口的机制参考原文,此文仅作为引荐。

0 0