#include <ftw.h>
#include <stdio.h>
int wrapper(const char * fpath, const struct stat *sb, int typeflag, struct FTW *ftwbuf) {
printf("File %d\n", ftwbuf->base);
return(0);
}
int main(int argc, char ** argv) {
const char *name;
int flags = 0;
name = argv[1];
nftw(name, wrapper, 20, flags);
return 0;
}
下的一些文件当我编译器(gcc -o kconfig_parser.c解析器)警告,我有这个警告,这个错误..
kconfig_parser.c:5: warning: ‘struct FTW’ declared inside parameter list
kconfig_parser.c:5: warning: its scope is only this definition or declaration, which is probably not what you want
kconfig_parser.c: In function ‘wrapper’:
kconfig_parser.c:6: error: dereferencing pointer to incomplete type
我检查的结构和回调的原型的定义,以及一些例子,应该没事......我在做什么错? (我删除了几乎所有的代码清除它)...
谢谢
其实,我联系到SUSv2规范应该如何nftw工作(我把这种更新到SUSv3链接)。在符合SUSv2或SUSv3的系统上,您不应该需要#define,但看起来您可能在Linux上需要它。 – 2009-04-23 16:16:55