gpt4 book ai didi

C 读到文件末尾

转载 作者:太空狗 更新时间:2023-10-29 15:18:23 26 4
gpt4 key购买 nike

我目前有读取 4 行的代码,我希望能够更改它直到 EOF 或我的 MAX const int 值。我无法让 !EOF 正常工作,想知道如何更改我的代码来完成此操作?

提前致谢

#include <stdio.h>

struct record{
char name[2];
int arrival_time;
int job_length;
int job_priority;
};

const int MAX = 40;

int main(void)
{
struct record jobs[MAX];
int i = 0;
int j;
FILE *f = fopen("data.dat","rb");

while (fscanf(f, "%s %d %d %d", &jobs[i].name, &jobs[i].arrival_time,
&jobs[i].job_length, &jobs[i].job_priority) == 4 && i < MAX)
i++;

for (j = 0; j < i; j++)
printf("%s %d %d %d\n", jobs[j].name, jobs[j].arrival_time,
jobs[j].job_length, jobs[j].job_priority);

fclose(f);

return(0);
}

最佳答案

有点像

while (fscanf(f, "   %s   ", &etc) != EOF) {

}

然后使用 feof(f) 来检查它是否是 fscanf 错误或者实际上是 EOF

关于C 读到文件末尾,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7921141/

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