问题标签 [feof]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1440 浏览

c - 额外的 EOF 字符

我有一个将文件读入缓冲区结构的程序。我遇到的问题是,当我查看文件的输出时,末尾有一个额外的 EOF 字符。生病发布相关功能:(注意:我删除了参数检查,只在与问题相关的功能中发布了代码)

b_load

b_print

b_getc

最后我得到:

“a catÿ”(y 是 EOF 字符)

它打印一个 EOF 字符,但从不添加到缓冲区中。当驱动程序代码将 EOF 字符添加到缓冲区的末尾时,会出现 2。知道是什么原因造成的吗?我可能用feof()错了,所以可能是这样,但在代码中是必需的

0 投票
4 回答
4738 浏览

c - 从文件中读取未知数量的整数

这是一个从文件中读取未知数量的整数并计算平均值的函数。由于某种原因,文件中的最后一个元素被读取了两次。有人可以解释为什么吗?我知道如何解决它,但想知道幕后发生了什么。

if我通过在循环中放一秒钟来修复它:

0 投票
1 回答
2037 浏览

c - 如何通过仅输入一个 EOF 来结束 scanf

我遇到了这个问题。我正在使用 while 循环扫描数字字符串,需要结束扫描并开始执行我的程序的其余部分。我只是不知道如何刷新标准输入或做任何事情以不按两次 Ctrl+D。我只需要发送一次 EOF 来告诉我的循环结束。

0 投票
1 回答
103 浏览

c - c中的基本流处理

我只是对 C 中的基本流处理感到困惑。即使经过一个小时的谷歌搜索和阅读这个问题,我也并不聪明(这不是我第一次尝试深入研究这个问题)。我正在尝试从输入中读取数字,直到达到 EOF 或非数字并能够区分这 2 个。据我了解,这应该可行,但feofandferror条件永远不会成立。这是为什么 ?有人可以为我提供一个有效的代码片段以及一个虚拟的友好深入解释吗?

0 投票
3 回答
2746 浏览

c - 如何将 feof 和 ferror 用于 fgets(C 中的 minishell)

我已经编写了这个 minishell,但我不确定我是否正确控制了错误。我知道 fgets 可以返回 feof 和 ferror ( http://www.manpagez.com/man/3/fgets/ ) 但我不知道如何使用它们。

我检查了 fgets 是否返回一个空指针(这表明缓冲区的内容是不确定的),但我想知道如何使用 feof 和 ferror。

0 投票
1 回答
56 浏览

c - 读取结构的连续数组元素并立即打印它,直到它到达 c 中的文件末尾

我正在为我们的项目使用 c 编程制作一个简单的游戏。球员信息(球员号码,如 1 2 或 3、球员姓名和得分)通过结构存储在文本文件中。我想在游戏开始之前“加载”之前玩家的信息,以便当前玩家通过从文件中获取玩家编号并立即打印出来来知道他/她的玩家编号是什么。我正在使用,while(!feof(fp))但我遇到了麻烦,因为它只打印第一个玩家号码。请帮我。

0 投票
2 回答
79 浏览

c - Counting lines in a data file

In this code snippet I try to count the number of rows contained in a file. The data are divided into seven columns and 421 rows. However, the total number outmput returns as 422, that is counted in more than one line. Why? How can I avoid this problem?

I know it's wrong to use instruction while (! Feof (inStr)), but I was asked explicitly to use it.

0 投票
3 回答
522 浏览

c - fread 从二进制文件中读取记录时返回 < 1

我正在尝试从二进制文件中读取学生记录 (SREC)。该文件肯定包含完整的记录(之前的运行写入该文件)。在我的输出中,我收到两条记录的两次“错误:无法从文件中读取记录”语句。顶部的 printf(Reading record, numR) 显示 3 次,所以我知道 while 循环在应该达到 eof 时进入了 3 次。

有任何想法吗?提前致谢!

0 投票
2 回答
1591 浏览

c - C - feof 和 fseek 替换/等效代码?

我一直在我的代码中使用上述函数,现在发现我们不允许这样做。也许有人可以帮助实现替代功能?我只允许使用 Fgets、fgetc、fputc、fprintf、sprintf、fscanf、sscanf、rewind、stdin、stdout ......

关于 fseek,我对获取需要跳过的字符有一个大致的想法,这是一个正确的想法吗?

如果有人可以提供帮助,我会很高兴。非常感谢!

0 投票
1 回答
155 浏览

c - feof() 和 fscanf() 在将字节 1b 扫描为 char 后停止工作。是因为它是ascii中的'ESC'吗?我能做些什么?

我目前正在编写一个处理 PPM 文件的程序(P6 类型,而不是 P3)问题是某些图像具有字节 0x1b,根据 ascii 表,它被称为“ESC”

以下几乎是我的代码:

// 那里的所有包含,, , ...

出于某种原因,fscanf 在读取“ESC”字节后开始返回-1(但读取它的字节不返回-1)

所以样本输出将是:

1 -1 -1


另一方面,我阅读了“while(!feof()) 总是错误的”和关于使用 fscanf 的大文件的内容,但我的 ppm 图像不大于 500x500 像素...

为了能够继续阅读,我可以/应该做什么?

谢谢您的帮助!