feof相关内容

为什么这个 C 代码有问题?

关于另一个问题,Jerry Coffin 指出了以下几点: 它(可能)与您的问题并不真正相关,但是 while (!feof(fileptr)){ 几乎是一个有保证的错误. 我想我会开始一个单独的问题,因为该评论有点偏离主题.有人可以向我解释一下吗?这是我之前用直接 C 编写的第一个程序. 解决方案 此语句的原因是 feof 在到达文件末尾时仍然(最初)为 false -- 它 ..
发布时间:2021-12-26 18:08:19 其他开发

如何使用 feof(FILE *f)?

我在使用 do-while 循环时遇到困难,应该停止当我们到达文件末尾时.这是循环代码: 做{if (pcompanyRow[0] != '#' && pass == 1) {strtok(pcompanyRow, ":");pcompanyName = strcpy(pcompanyName, strtok(NULL, ""));通过 = 2;fgets(pcompanyRow, 1024, ..
发布时间:2021-12-09 08:17:16 其他开发

为什么“while (!feof (file))"总是错误的?

使用 feof() 控制读取循环有什么问题?例如: #include #include 整数主要(int argc,char **argv){char *path =“标准输入";文件 *fp = argc >1 ?fopen(path=argv[1], “r"):标准输入;如果( fp == NULL ){错误(路径);返回 EXIT_FAILURE;}while( !feof(fp) ){/ ..
发布时间:2021-12-01 23:32:05 其他开发

feof 或 fscanf 错误

我正在做一个程序,我使用 Dev C++.运行我的程序时终止.在调试时,它说'segmentation fault'.不知道会不会无限循环.我不知道问题出在代码中的 while(!feof(program)) 还是 fscanf(...). 谁能帮忙解决这个问题?在下面查看我的程序: #include#include#include#includeint main(){fpos_t cur ..
发布时间:2021-07-16 18:51:45 C/C++开发

如何在 C 中使用 EOF 标准输入

我需要将坐标输入到一个数组中,直到遇到 EOF,但我的代码有问题.我用过 ctrl+Z, ctrl+D int main(){int x[1000],y[1000];int n=0,nr=0,a,b,i;printf("请输入坐标:\n");while(scanf ( "%d %d ", &a, &b) == 2){x[n]=a;y[n]=b;n++;}如果 (!feof(stdin)){pri ..
发布时间:2021-07-16 18:43:42 其他开发

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

我正在为c中的项目编写一个用于图书馆管理系统的程序.我使用了while循环以及!feof 条件来检查文件中的 book .既然我读到我们不应该使用它,并且如果必须的话,我们应该使用一些break语句来完成它,并且因为我读的是大号.从文件中获取变量,我使用 found 打破了while循环.只要 Target 和 book.bname 匹配(使用 strcmp ), found 就会设置为1,并进行 ..
发布时间:2021-05-07 18:56:43 服务器开发

如何对fget使用虚假和恐怖(C语言中的minishell)

我已经编写了这个minishell,但是不确定我是否对错误进行了正确的控制.我知道fgets可以返回虚假信息和错误信息( http://www.manpagez.com/man/3 /fgets/) 但我不知道如何使用它们. 我已经检查了fgets是否返回一个空指针(这表明缓冲区的内容是不确定的),但是我想知道如何使用feof和ferror. #include ..
发布时间:2020-11-04 18:34:59 其他开发

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

在查看 fgets §7.21.7.2,3的ISO C11标准后,返回值是关于概要代码的说明: #include char * fgets(char *限制s,int n,FILE *限制流); fgets 函数返回 s 如果成功。如果遇到文件末尾并且没有字符读入数组,则数组的内容保持不变,并返回空指针。如果在操作过程中发生读取错误,则数组 ..
发布时间:2020-10-30 04:54:25 其他开发

贝宝IPN脚本,feof和fgets问题

几天来,我的Paypal IPN侦听器脚本一直出现问题.对于那些不熟悉Paypal IPN系统的人,基本上Paypal会向您的脚本发送有关交易的消息,然后再添加一些附加位,将其发送回去.如果Paypal收到正确的答复,它将以'VERIFIED'答复,否则,将显示'INVALID'. 我最初以为我遇到的问题是与"fsockopen"命令有关: $ fp = fsockopen('ssl://s ..
发布时间:2020-05-25 03:16:08 PHP

使用fread读取文件时复制最后一个条目

可能显示的文件:结果, 这是为什么C代码车?结果, 确定流结束时的问题EOF 试图以4字节块读取二进制文件。然而,第一个实现(如下所示)将复制最后一个条目,并只复制最后一个条目。 FILE * f = fopen(“ test.a“,”r + b“); char buffer [4]; while(!feof(f)){ fread(buffer,4,1,f); pr ..
发布时间:2017-11-04 22:44:07 C/C++开发

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

我正在编写一个处理PPM文件的程序(P6类型,而不是P3) 问题是某些图像的字节为0x1b,根据ascii表称为“ESC” p> 以下几乎是我的代码: //所有包含在那里,..., p> int main(void) { FILE * finput; int number [7]; char r,g,b; finput = fopen(“my.ppm”,“ ..
发布时间:2017-08-28 23:41:57 开发方法

从文件中读取和使用的feof退出循环()

此链接讲述为什么的feof()是作为一个循环退出的指标,使用一件坏事。 不安全==>有一个的feof()检查的同时,和与fgets()里面的而。 安全==具有与fgets()>!= NULL 检查的同时,本身。 我应该看到不安全code做一个额外的,而循环迭代,但都做同样的(正确)的数量的循环。有人可以帮助我了解这里发生了什么? 编辑:链接居然说为什么发生这种情况,但它采取了下面,我明白正 ..
发布时间:2016-08-25 09:50:34 C/C++

如何通过只输入一个EOF结束scanf函数

我encoutering这个问题。我使用whil​​e循环扫描数字串,需要结束扫描并开始着手我的程序的其余部分。我只是想不通,怎么刷新标准输入或做任何事情没有preSS Ctrl + D键两次。我只需要发送EOF只有一次告诉我的循环结束。 而(!的feof(标准输入)) {状态= scanf函数(“%d个”,&安培;阵列[我]); 如果((状态= 1&安培;!&放大器;状态= E ..
发布时间:2016-08-25 09:19:21 C/C++

检测的feof文件的假结束

我问这个早了不同的问题,但我是大错特错了那么我创建了一个新的问题,因为我要问一个完全不同的问题。这个问题 我有一个函数读取一个文本文件中的给定线(由交流变频给出)。它执行的行的读出,然后检查,如果这是在该文件中的最后一行。如果因此增加的值。 的问题是,它的增加的值,即使它不是文件的实际结束。我想我使用的feof错了,但我已经没有运气得到它的工作: INT看书(TinCan *印加,INT切 ..
发布时间:2016-08-24 14:42:19 C/C++

使用使用的feof的fscanf()()

下面是我的code。 #包括LT&;&stdio.h中GT; 无效的主要(){ FILE * FP; 诠释A,B; FP = FOPEN(“hello.txt的”,“R”); 而(!的feof(FP)){ 的fscanf(FP,“%D”,&安培;一,和b); 的printf(“%D \\ n”,A,B); } } 我的hello ..
发布时间:2016-08-23 11:01:14 C/C++

怎样的feof()的作品用C

请问的feof()检查EOF为文件指针或检查位置的当前位置当前文件指针旁边? 感谢您的帮助! 解决方案 每个文件流有一个内部标志,指示主叫方是否试图读取过去的结束该文件已经。 的feof 返回该标志。该标志不表示当前文件位置是否是作为文件的结尾,一个previous读只是否已试图读取过去的文件的末尾。 作为一个例子,让我们穿行发生了什么,通过包含两个字节的文件读取时。 F =的fo ..
发布时间:2016-08-18 14:28:54 C/C++

如何使用的feof(FILE * F)?

我有一个很难与一个do-whil​​e循环,是应该停止 当我们到达文件的结尾。这里的循环code: {做 如果(pcompanyRow [0] ='#'和;!&放大器;通== 1){ 的strtok(pcompanyRow,“:”); pcompanyName =的strcpy(pcompanyName,strtok的(NULL,“”)); ..
发布时间:2016-08-18 13:31:33 C/C++