c - What is wrong with this header file? -
i'm new c
, starting learn header files. whilst using header i'm getting error saying invalid type argument of '->' (have struct dirent)
. don't understand means, read here second argument ->
must pointer, tried add *
(ent->*d_name)
error unexpected token *
, how can fix this?
#ifndef utilis_h_included #define utilis_h_included "utilis.h" #include <stdio.h> #include <dirent.h> char *connect(const char *pattern) { struct dirent ent; char *d_name; dir *mgt = opendir("\\\\example\\windows7apps"); while ((ent = readdir(mgt)) != pattern) { puts(ent->d_name); } } #endif
i read here second argument -> must pointer,
that's wrong, "first" argument, or, actually, operand of ->
operator should of pointer type.
in case, ent
not pointer type, cannot use pointer member dereference operator ->
. (you have used member dereference operator .
instead).
actually, in code, ent
should pointer, per return type of readdir()
. better correct type of ent
of struct dirent *
, can make use of ->
on ent
.
Comments
Post a Comment