问题标签 [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 投票
1 回答
137 浏览

c - 逐个字符比较两个文件 - C 中的文件结尾错误

我有一个具体的问题。我必须从两个文件中读取字符串并逐个字符地比较它们,并告诉它们在哪一行中存在差异以及它们不同的字符数。我已经制作了指针和所有东西,但问题是当涉及到第一个文件的末尾时(它只需要读取较短文件的长度)我无法比较最后一个字符串,因为我的 for 循环一直到'\n',最后一行没有\n。但另一方面,如果我将 '\0' 放在 for 循环中,它会给我一个错误的结果,因为它也将 '\n' 视为 char。我该如何处理这个问题?建议?我不想使用 strcmp() 因为我需要计算 char 差异,并且还有一些其他条件需要满足。这是我的问题:

0 投票
1 回答
94 浏览

c - 无法正确打印txt文件

嗨,我有这个文本文件,其中字符中的第一列第二和第三个是整数..但我无法正确读取和打印值。

所以这是我试图读取的文件:

这是代码:

这就是输出的样子

我不知道为什么它给了我这个。谢谢你

0 投票
1 回答
290 浏览

c - 使用带有终止条件的while(!feof),它仍然在c中无限循环

我正在为图书馆管理系统编写一个程序作为我的 c 项目。我使用 while 循环和!feof条件来检查文件中的book. 因为我读到我们不应该使用它,如果我们必须使用它,我们应该用一些 break 语句来做,而且因为我正在阅读大量的 no。来自文件的变量,我用来found打破while循环。每当Targetandbook.bname将匹配(使用strcmp)时,found设置为 1 并且 while 循环将被终止。这是我在这段代码背后使用的逻辑。这book是一个结构,它book.bname是其中的一部分。我正在为这个程序使用 linux 操作系统。请告诉我我错在哪里?

这是我在输入书名后面临无限循环的功能。它进入一个无限循环,打印它遇到的第一本书的名字。我应该怎么办?我的问题与其他类似问题不同,因为我使用两个条件而不是仅 !feof。我使用 a variable作为flag .stillwhile loop没有终止。

0 投票
1 回答
514 浏览

c - 为什么 ftell 打印 -1 作为文件指针的值?为什么 errno 会打印出“INVALID ARGUMENT”?

我在一个项目中有这两个函数,它将用户信息加载并保存到一个文件中。每个用户都保存在文件的新行中。我的问题是当我尝试使用 ftell(f) 时程序崩溃了。当我打印 ftell(f) 时,它会在使用 fopen() 打开文件后打印 -1。我试图在 errno 中查看错误,但是一旦我使用 fseek 修改文件指针 f 位置,它会在 fopen() 之后打印“NO ERROR”但是“INVALID ARGUMENT”。

我的问题出在我的 Load_File 函数中,但我也显示了 Save_File 函数以检查我在文件中是否正确写入。

0 投票
4 回答
748 浏览

c - 在C中合并两个文件

我想在 C 中合并两个文件,最后停止。

我有一个程序,但即使在我的文件结束后它仍然会拼写单词。例如:

文件 1:

文件 2:

我得到的结果是:

而且我要:

我认为这是我在循环中的if陈述是我的问题。while我不知道如何定义它。

我的代码是:

0 投票
2 回答
707 浏览

php - php中的fgetc()feof()参数错误

今天我收到了来自我的网络服务器管理员的电子邮件,说“由于大约 60 GB 的错误文件,您的服务已暂停。通过 FTP 检查 errorlog.txt。” 在日志文件中,只有这两行重复:

这是相关的代码片段:

这里有什么问题?提前致谢...

0 投票
1 回答
100 浏览

c++ - 调用 fread() 函数时文件指针如何移动?

我的疑问是,当 fread() 函数返回并在下一个语句 feof() 检查 EOF 时,如果 fread() 处理了文件中的最后两个记录块,feof() 不应该返回 true 吗?有人可以完全解释其功能吗?

0 投票
1 回答
141 浏览

c - 读取混合类型文件中的整数,“feof”不起作用

我在我的程序中遇到了错误(应该找到所有整数和字符和整数的文件),其中“feof”不起作用(而循环永远不会结束)或没有整数被读取/找到,除非整个文件是充满整数。

我的代码...

编辑:

我忘了重新添加“int result”,这是一个新错误。可能像有人提到的那样与 fgetc 有关。我得到一个额外的加到我的总数中。

已解决:我将 34 读作“3”和“4”,所以它算作两个。不确定如何标记为已解决或是否删除。

0 投票
2 回答
1660 浏览

c - 是否可以区分fgets返回的错误

在查看fgets§7.21.7.2, 3 的 ISO C11 标准时,返回值是关于概要代码的:

如果成功,fgets函数将返回s 。如果遇到文件结尾并且没有字符被读入数组,则数组的内容保持不变并返回一个空指针。如果在操作过程中发生读取错误,则数组内容是不确定的,并返回一个空指针。

该标准说,对于文件结尾返回空指针并且没有读入任何字符或发生读取错误。我的问题是,仅仅从fgets和返回的空指针,有没有办法区分这两种情况中的哪一种导致了错误?

0 投票
0 回答
56 浏览

c - C stdin 和 CTRL+C 复制上一行

我正在尝试从中读取stdinfgets这是从文件中读取的另一种方式。我的想法是我应该能够写尽可能多的行,并停止从标准输入读取CTRL+C is entered or any other bash terminating commands.

但是问题是,如果我写一行,例如:

然后我按下ENTER提交它,CTRL+C然后它计算我终止的行与前一行相同。这里有一些例子:

示例 2:

所以我的问题是,当发送终止命令(CTRL+C)时,如何阻止程序复制前一行?

编辑:这是我用来从流中读取的代码

CTRL+Dbash 中按下 时,fgets 命令使用输入的前一行。

谢谢