【问题标题】:How does rename() actually work under the hood in C?rename() 在 C 的底层是如何工作的?
【发布时间】:2020-11-05 14:45:44
【问题描述】:

rename() 是否将文件复制到另一个文件中,然后删除原始文件?还是有其他的方法?

我在互联网上找不到任何可以解释这一点的东西。

【问题讨论】:

  • 注意rename()是一个系统调用,所以很大程度上取决于操作系统。
  • 不,这不是我们在 C 中所做的经典复制/交换。文件重命名只会调用系统函数/中断。

标签: c file-io rename


【解决方案1】:

确切的机制完全取决于所使用的操作系统和文件系统,但通常文件名存储在目录中。因此,通常更改文件名涉及修改目录列表中的名称(或者如果移动文件,则删除目录条目并将其添加到树中的其他位置)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-01-26
    • 1970-01-01
    • 2016-04-17
    • 1970-01-01
    • 2020-11-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多