Можно ли сохранить историю чтения строки в текстовом файле и получить историю после повторного открытия программы ...
char *line, *expansion;
int result;
stifle_history(7);
while ((line = readline(" $ ")) != NULL) {
result = history_expand(line, &expansion);
rl_bind_key('\t',rl_complete);
if (result)
fprintf(stderr, "%s\n", expansion);
if (result < 0 || result == 2) {
free(expansion);
continue;
}
strncpy(line, expansion, sizeof (line) - 1);
free(expansion);
read_history("history_file");
write_history("history_file");
register HIST_ENTRY **the_list;
register int i;
if (the_list)
for (i = 0; the_list[i]; i++)
printf("%d: %s\n", i + history_base, the_list[i]->line);
if (strlen(line) > 0)
add_history(line);
Я немного улучшил свой код. Пожалуйста, покажите, как я могу исправить свой код, чтобы сохранить историю в текстовом файле и затем извлечь ее.