c++ - 在 C++ 中取消链接与删除

标签 c++ unix posix erase

C++ 中的 remove 和 unlink 函数有什么区别?

最佳答案

除了 unlink 是特定于 unix 的(正如 Chris 指出的那样),我们在 POSIX 手册中阅读:

If path does not name a directory, remove(path) is equivalent to unlink(path). If path names a directory, remove(path) is equivalent to rmdir(path).

至于目录传递的unlink,我们阅读:

The path argument must not name a directory unless the process has appropriate privileges and the implementation supports using unlink() on directories. (...) Applications should use rmdir() to remove a directory.

关于c++ - 在 C++ 中取消链接与删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2192415/

相关文章:

c++ - 在具有统一初始化语法的 C++11 move 构造函数中使用 std::move

c# - 为什么我可以从基于 C#/C++ 中该类型的模板化/泛型类派生

Linux-重命名文件夹中的所有文件

c - 如何知道 Linux 系统调用是否可重启?

shell - 使用 POSIX 工具将换行符替换为字符串 '\n'

c++ - 如何获取指向 2D std::vector 内容的指针

web-services - HTTP PUT 的查询参数的 curl 命令行编码

linux - sed 命令未按预期工作

c - 我是否需要为每个 C POSIX 线程使用不同的签名集以确保屏蔽信号时的原子性?

c++ - 错误 : Expected ‘)’ before ‘&’ token