print string problem in C
i have this struct
typedef struct tree_node_s{
char word[20];
struct tree_node_s *leftp,*rightp;
}fyllo
i want to print the word in a file and im using fprintf the problem is in PROBLINE
void print_inorder(fyllo *riza,FILE *outp){
if (riza==NULL) return ;
print_in开发者_StackOverflow社区order(riza->leftp,outp);
fprintf("%s",riza->word); //PROBLINE
print_inorder(riza->rightp,outp);
}
im compiling and i got this problem
tree.c: In function ‘print_inorder’:
tree.c:35: warning: passing argument 1 of ‘fprintf’ from incompatible pointer type
whats the problem here;
You are calling fprintf
wrongly. The declaration of this function is
int fprintf(FILE *restrict stream, const char *restrict format, ...);
Therefore, you should put the FILE pointer as the first argument (did you notice that you have never actually used outp
in the function?). The line should be written as
fprintf(outp, "%s", riza->word);
The first argument to fprintf
should be the FILE*
to print to:
fprintf(outp, "%s", riza->word);
Try changing
fprintf("%s",riza->word);
to
fprintf(outp, "%s", riza->word);
精彩评论