Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我目前正在fseek()程序中使用。我还维护了一个字节数组,用于跟踪文件内打印的每一行的字节。我还使用段树,以便更快地访问特定位置。另外,我不允许使用其他任何东西......(如结构)有没有办法这样做?
fseek()
也许有比这更好的选择,但你可以做这样的事情
存储要删除的位置指针。// 变量 1 将删除操作必须结束的查找位置存储在另一个变量中。
现在从 delte 必须结束的位置到文件末尾,将值读入缓冲区。现在再次回到 variable1 并开始从该位置附加存储在缓冲区中的内容。追加操作完成后,最终添加 EOF。
更简单的方法,但更耗费内存/时间:将整个文件读入缓冲区。现在将内容替换到缓冲区中。再次打开同一个文件,但处于“写入”模式并将缓冲区清空到文件中。这将覆盖所有内容而不创建新文件。
希望有人提出更好的解决方案:)