所以我有一个项目,我需要构建一个小的简单文本shell,可以运行,编辑和读取目录中的文件。我有一个小的原型应该可以工作,除了编译时,我收到了有关在dirent.h头文件中使用的struct dirent中找不到d_type的错误。struct dirent在头文件中没有de_type
d = opendir(".");
c = 0;
while ((de = readdir(d))){
if ((de->de_type) & DT_DIR)
printf(" (%d Directory: %s) \n", c++, de->de_name);
}
变量“德”是类型结构的dirent *,并正在检查它的类型,我得到的错误:“结构的dirent”没有名为“de_type”
这里成员就是我真的难倒和困惑:我已经在两个窗口(使用dev C++)和Ubuntu(使用gcc)上编译了这段代码。我收到两个操作系统的相同的错误,当我检查使用的库,这是正常的GNU C库,我相信,有一个变量有名为d_type:
https://www.gnu.org/software/libc/manual/html_node/Directory-Entries.html
我发现了其他的引用到一个dirent.h文件,这并不是因为一个库位于不同的库中,并且如果是这样的话,我如何加载该库以便编译代码?
对不起,很长的文章,非常感谢所有谁回答!
您使用的是什么文件系统类型? – e0k
好的,所以现在这个问题根本没有意义,因为标题中说'd_type'和其他地方都有'de_type'。 – user3386109