指向stdio FILE的指针编译器错误

时间:2012-09-08 09:01:34

标签: android c android-ndk

android NDK抱怨这个:

#include <stdio.h>
int fileno (FILE *stream); //line 27 io.h

它说:

jni/application/io.h:27:5: error: expected ')' before '*' token
jni/application/io.h:27:5: error: expected ')' before '->' token

我会理解FILE是否是某个宏,但事实并非如此,它只是来自stdio的那个。

如果我拿出*stream我得到:

int fileno (FILE);
jni/application/io.h:27:5: error: expected ')' before '->' token

我无法理解它从哪里得到->令牌。

1 个答案:

答案 0 :(得分:1)

等我看到,fileno

中的stdio.h是宏

正在扩展到:

int ((FILE* stream)->_file);