-3
我正在使用fgetc从文本文件,一次一个字符,但由于某种原因,它重新排序字符的文本文件流。该文本文件包含有类似“ABC”C fgetc奇怪的行为,当同时用作参数到相同的功能
void newFunction(int i, int j, int k);
int main()
{
FILE *fp;
/...opens text file.../
newFunction(fgetc(fp), fgetc(fp), fgetc(fp));
}
void newFunction(int i, int j, int k)
{
printf("%d %d %d", i, j, k,);
}
我期待a b c
但为什么我的代码给c b a
?
它没有定义参数评估的顺序。 –
@Someprogrammerdude你的意思是优先?我会尝试用括号括起来。 – reiallenramos
*运算符*优先级与它无关。只是可以按任何顺序评估参数。你不会知道哪个'fgetc'调用会被首先调用。请阅读[此评估订单参考](http://en.cppreference.com/w/c/language/eval_order)以获取更多信息。 –