我正在尝试为文件系统定义数据结构。我知道文件和目录都是由inode表示的,只有一位可以区分两者。
但是,我无法理解如何在特定目录下显示文件。在Unix Filesystem中,我没有看到任何指向子inode的结构? 有没有这样做的结构?如果没有,我如何获取目录下的文件?如果两者都由相同的数据结构(inode)表示,那么目录中的子inode指向什么?
答案 0 :(得分:1)
struct dirent 用于表示可以是文件或其他目录的目录条目,请在手册中查看它的定义(例如http://linux.die.net/man/3/readdir)。您可以看到此结构包含inode编号,文件类型等。通过使用函数 opendir 和 readdir ,可以遍历文件系统,检查How can I get the list of files in a directory using C or C++?。