gpt4 book ai didi

C fgetc 同时用作同一函数的参数时的奇怪行为

转载 作者:行者123 更新时间:2023-11-30 21:07:28 26 4
gpt4 key购买 nike

我正在使用 fgetc 从文本文件读取和验证流,一次一个字符,但由于某种原因它会重新排序字符。该文本文件包含类似“abc”的内容

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

最佳答案

void newFunction(int i, int j, int k);

int main()
{
FILE *fp;
/...opens text file.../
int i = fgetc(fp);
int j = fgetc(fp);
int k = fgetc(fp);
newFunction(i,j,k);
}

void newFunction(int i, int j, int k)
{
printf("%d %d %d", i, j, k);
}

您可以执行上述操作以避免评估参数的顺序出现歧义。

关于C fgetc 同时用作同一函数的参数时的奇怪行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43567886/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com