我能夠給用戶輸入限制爲5個字符使用GNU readline:readline的使用默認值
#include <readline/readline.h>
#include <stdio.h>
#include <stdlib.h>
static int limit_rl(FILE *f)
{
if (rl_end > 5) {
return '\b';
}
return rl_getc(f);
}
int main(void)
{
char *str;
rl_getc_function = limit_rl;
str = readline("> ");
printf("%s\n", str);
free(str);
return 0;
}
但是,如何讀取默認值(不提示)輸入,如:
> ummy
^cursor here
如果用戶類型d和輸入迴歸 「虛擬」
如果用戶類型DEL和輸入返回「MMY」
你的意思是'ummy'應該存在了嗎? – ameyCU
查看'rl'示例 - 可以設置一次執行'rl_insert_text'的啓動鉤子('rl_startup_hook'),然後禁用它自己。 – usr2564301
@ameyCU,是的,它必須出現在'rl_line緩衝區'和屏幕 –