gpt4 book ai didi

c - 在 C shell 中实现历史记录

转载 作者:行者123 更新时间:2023-11-30 18:58:36 25 4
gpt4 key购买 nike

我正在创建一个简单的 C shell,并被要求实现历史功能,有谁知道我将如何做到这一点?它应该能够打印历史记录、保存并加载它。

最佳答案

您可以使用 char * 数组将您的命令保存在内存中。

char *history_command[MAX_COMMAND];

并使用磁盘中的文件来保存 history_command数组。

每次history_command数组已更改,而不是删除文件并保存 history_command在相同的文件名中

保留start索引(最初为零)以及大小,因此如果 size < MAX_COMMAND ,您写信给history[size++] ,如果 size == MAX_COMMAND您写信给history[start++] (后跟 start %= MAX_COMMAND; )。这样你的数组就变成了圆形(@shahbaz建议)

否则,您可以使用链接列表来实现此类行为。这是一个 FIFO 队列。因此用链表处理可能是另一种解决方案

关于c - 在 C shell 中实现历史记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15619691/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com