“/”和“\\”和feof();】的更多相关文章

功能:检测流上的文件结束符.如果文件结束,则返回非0值,否则返回0,文件结束符只能被clearerr()清除. 正确的应该是feof返回0表示文件没有结束,返回1,表示结束.feof实际观察的是上次读操作的内容,也就是上次读操作fread返回的值,如果读操作的返回值表明读取的不是空,那feof就返回0,如果上次读操作失败了,则feof返回1,表示读取完了.而fread返回值是表示正确读取的块数,如果不够,则返回0.那么我们看一下下面的程序:while(1){ if(feof(fp1)) { br…
EOF用于判断所操作的文件是否已经读到文件结束,是在stdio.h文件中定义的符号常量,值为-1. 即当系统读取到文件结尾,所返回的一个信号值(也就是-1). EOF不是可输出字符,因此不能在屏幕上输出.由于字符的ASCII码不可能出现-1,因此EOF定义为-1是合适的.当读入的字符值等于-1时表示读入的已不是正常的字符而是文件结束符.但以上只适用于读文本文件的情况. 现在ANSI C以允许用缓冲文件系统处理二进制文件,而读入某一个字节中的二进制数据的值有可能为-1,这就出现了需要读入有用数据却…
这篇文章主要介绍了PHP使用feof()函数读文件的方法,以实例形式对比了正确与错误的用法,阐明了feof()函数的使用技巧,需要的朋友可以参考下 本文实例讲述了PHP使用feof()函数读文件的方法.分享给大家供大家参考.具体用法如下:feof应用于PHP 4, PHP 5 -用来测试文件指针是否到了文件结束的位置.如果服务器没有关闭由 fsockopen() 所打开的连接,feof() 会一直等待直到超时而返回TRUE.默认的超时限制是 60 秒,可以使用 stream_set_timeou…
课本上时这样写的:(用putchar(ch);代表对取出来的字符的处理.) while(!feof(fp)) { ch=fgetc(fp); putchar(ch); } 但是,这样写的话,fgetc()函数总是会多读入一个字符. 应该改为如下形式: ch=fgetc(fp); while(!feof(fp)) { putchar(ch); ch=fgetc(fp); } 只有当从文件输入“文件结束符”后,才能使用feof(fp)函数判断文件是否结束. 课本上的代码是这样运行的:使用ch=fge…
[feof使用注意] 以下是错误的用法,發生狀況->多讀一次?: FILE* pf; while(!feof(pf)){ //fread 讀取 //資料處理 } feof是發生在fread使用"讀取過檔案"後,已讀到End-of-file位置時,回傳的指標才會是true(檔案結尾),所以上面的寫法在讀完最後一筆後,指標會停留在End-of-file位置前,需要再讀一次到在End-of-file位置後(判斷讀取資料失敗,因為已讀到eof),才會為true,而因為fread讀取失敗,buffer的資…
因为文本文件中存储的是ASCII码,而ASCII码中FF代表空值(blank),一般不使用,所以如果读文件返回了FF,说明已经到了文本文件的结尾.但是如果是二进制文件,其中可能会包含FF,因此不能把读到EOF作为文件结束的条件,此时只能用feof()函数. 在VC里,只有当文件位置指针(fp->_ptr)到了文件末尾,然后再发生读/写操作时,标志位(fp->_flag)才会被置为含有_IOEOF.然后再调用feof(),才会得到文件结束的信息.因此,如果运行如下程序: char c; whil…
转载自:http://blog.csdn.net/xidianzhimeng/article/details/23541289 1 fopen 函数原型:FILE * fopen(const char * path,const char * mode); 返回值:文件顺利打开后,指向该流的文件指针就会被返回.如果文件打开失败则返回NULL,并把错误代码存在errno 中. fopen_s,_wfopen_s安全性上相对于fopen有所增强,如果成功则返回0,失败则返回响应的错误代码 errno_…
百度知道 >电脑/网络 >编程语言 >C/C++ feof()这个函数是用来判断指针是否已经到达文件尾部的. 若fp已经指向文件末尾,则feof(fp)函数值为"真",即返回非零值:否则返回0.…
查看 stdio.h 可以看到如下定义: #define  EOF  (-1) #define  _IOEOF  0x0010 #define  feof(_stream)  ((_stream)->_flag & _IOEOF) 由此可以看出,这两种方式的原理是不同的. 在这里先说下EOF和feof()这个两个宏定义,EOF是不可输出字符,因此不能在屏幕上显示.由于字符的ASCII码不可能出现-1,因此EOF定义为-1是合适的.当读入的字符值等于EOF时,表示读入的已不是正常的字符而是文件…
feof 作用:如果文件结束,则返回非0值,否则返回0 但要注意的是feof要读取到文件结束标志EOF后,才能判断文件是否结束. 所以使用while(!feof(pFile))会出现最后fread会返回0,改进后的代码如下: while(!feof(pFile)) { s32Ret = fread(&stStopInfo, , sizeof(CARD_MNG_STOP_INFO_S), pFile); if(feof(pFile)) { break; } assert(s32Ret == siz…
fopen :Open file, or obtain information about open files 例如 fid = fopen(filename, permission)%许可包括: 'r'     Open file for reading (default). 'w'  Open file, or create new file, for writing; discard existing contents, if any. 'a'   Open file, or creat…
  文件中关于while(!feof(fp)) 循环多输出一次的问题   feof(fp)有两个返回值:如果遇到文件结束,函数feof(fp)的值为1,否则为0.   当读到文件末尾时,文件指针并没有超出文件,所以会多读一次.   解决办法: fseek(fp1,0,2); //文件末       w=ftell(fp1);           // 文件末指针的值 fseek(fp1,0,0);  //文件首  while(w!=ftell(fp1)) //循环…
查看 stdio.h 可以看到如下定义: #define  EOF  (-1) #define  _IOEOF  0x0010  #define  feof(_stream)  ((_stream)->_flag & _IOEOF) 由此可以看出,这两种方式的原理是不同的. 在这里先说下EOF和feof()这个两个宏定义,在我们学的课本中有这样的描述. EOF是不可输出字符,因此不能在屏幕上显示.由于字符的ASCII码不可能出现-1,因此EOF定义为-1是合适的.当读入的字符值等于EOF时,…
本文环境: OS:Mac OS X 10.8.4 PHP:5.3.15 PHP的官方手册中,函数feof()下面的讨论不少,对此做了一些相关的测试. <?php print <<<EOF <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <tit…
起因 执行一个C/C++程序出现segment fault.它逐行读取文本文件,每一行是一个图片名字,然后读图.处理图像,etc. 发现最后一次读取的文件名不存在(空的). 正确的逐行读取txt文件 这是正确的写法: #include <stdio.h> #include <string.h> int main(){ FILE* fp = fopen("/home/zz/images/face.txt", "r"); char line[10…
fopen() 函数用于在 PHP 中打开文件. 打开文件 fopen() 函数用于在 PHP 中打开文件. 此函数的第一个参数含有要打开的文件的名称,第二个参数规定了使用哪种模式来打开文件: <html> <body> <?php $file=fopen("welcome.txt","r"); ?> </body> </html> 文件可能通过下列模式来打开: 模式 描述 r 只读.在文件的开头开始. r…
feof()函数 函数原型:int feof(FILE *fp): 函数功能:检测流上的文件结束符,如果文件结束,则返回非0值,否则返回0,文件结束符只能被clearerr()函数清除 (函数feof()总是在读完文件所有内容后再执行一次读文件操作(将文件结束符读走,但不显示)才能返回真(非0)值) 函数 feof 只用于检测流文件,当文件内部位置指针指向文件结束时,并未立即置位 FILE 结构中的文件结束标记,只有再执行一次读文件操作,才会置位结束标志,此后调用 feof 才会返回为真 请读者…
feof()函数检查是否已经到达文件末尾(EOF) EOF == end  of  file 如果出错或者文件指针到了文件末尾(EOF)则返回true,否则返回false 语法: feof(file) 注意: feof()函数对遍历长度未知的数据的很有用 feof()----主要是用来测试文件指针是否到了文件结束的位置,文件指针必须是有效的,必须指向有fopen()或者fsockopen()成功打开的文件(并且还未由fclose()关闭) 如果说传递的文件指针无效可能会陷入到无限循环中,因为EO…
这是原来的代码: #include <stdio.h>int main(){    FILE * fp;    int ch;    fp = fopen("d:\\aaaaa\\1.txt","r");    while (!feof(fp))    {        ch = getc(fp);        putchar(ch);    }    fclose(fp);    return 0;} 以此来输出时会发现好像输出的内容在结尾部分多了一…
<?php /** * 文件指针控制fseek rewind ftell feof fpassthru */ //feof()判断文件读取是否超出文件长度 /*$file = fopen('a.txt', 'r'); fread($file, filesize('a.txt')+ 1); echo intval(feof($file));//feof()判断文件读取是否超出文件长度,超出返回1*/ /*$file = fopen('a.txt', 'r'); echo fgets($file);…
关于读文件的时候判断文本是否读完的方式一般可以通过EOF,一般宏定义为-1.因为ASCII码中不可能出现-1. 当以文本形式读取文件内容, 读入的字符值等于EOF时, 表示读入的已不是正常的字符而是文件结束符 当以二进制形式读取文件内容, 信息都是以数值方式存在的, EOF的值可能就是所要处理的二进制文件中的信息, 此时需要用 feof() 来判断是否到达了文件结尾 即EOF可以作为文本文件的结束标志, 但不能作为二进制文件的结束符, feof函数既可以判断二进制文件, 又可以判断文本文件…
clearerr(清除文件流的错误旗标) 相关函数 feof 表头文件 #include<stdio.h> 定义函数 void clearerr(FILE * stream); 函数说明 clearerr()清除参数stream指定的文件流所使用的错误旗标. 返回值 fclose(关闭文件) 相关函数 close,fflush,fopen,setbuf 表头文件 #include<stdio.h> 定义函数 int fclose(FILE * stream); 函数说明 fclos…
原文作者:aircraft 原文链接:https://www.cnblogs.com/DOMLX/p/9614820.html 一.标准I/O 1,什么是标准I/O?其实是指C语言里的文件操作函数,如:fopen,feof,fgetc,fputs等函数,他们和平台无关. 2,网络通信中使用标准I/O的优点: 良好的移植性.良好移植性这个不需多解释,不仅是I/O函数,所有的标准函数都具有良好的移植性.因为,为了支持所有的操作系统(编译器),这些函数都是按照ANSI C标准定义的. 标准I/O函数可…
http://stackoverflow.com/questions/15719360/using-fscanf-using-feof 靶子代码: #include<stdio.h> void main(){ FILE *fp; int a,b; fp=fopen("hello.txt","r"); while(!feof(fp)){ fscanf(fp,"%d %d",&a,&b); printf("%d…
feof()函数是我们C语言中操作文件常见的函数,也是我们最容易出错的函数 这个函数用来表示文件指针是否已经到了文件末尾的下一个位置.这个函数是通用的 可以用在文本文件和二进制文件 (EOF是文件结束的标志: (但是注意,在文本文件中,判断文本文件在文本文件结束符为不可见字符,值为26) (二进制中文件结束标志为-1,当把数据以二进制形式存放到文件中时,就会有-1值的出现,因此不能采用EOF作为二进制文件的结束标志) 我们常见的问题时用fgets读文件,然后用fputs打印,这样就会在最后一行出…
今天获取一个图片内容时, fopen("aaaaaa.png", "r"), 读取完文件头就停止了, 后来模式改为 "rb" 就可以了, 特此记录下; 由于字符的ASCII码不可能出现 -1, 因此EOF定义为 -1 是合适的 当以文本形式读取文件内容, 读入的字符值等于EOF时, 表示读入的已不是正常的字符而是文件结束符 当以二进制形式读取文件内容, 信息都是以数值方式存在的, EOF的值可能就是所要处理的二进制文件中的信息, 此时需要用 fe…
char const* filename="D:/hello.txt"; 路径名使用的是“/”或者使用 转义字符“\\”: "fopen", FILE *fp=fopen(char const *name,char const mode); e.g:FILE *fp = fopen(filename,"wb"); 打开文件流,name为要打开文件的路径,如这里的filename:mode 为对文件的操作模式,通常使用:“wb”(写操作),“rb”…
filename=c:/test/abc.text filename=c:\\test\\abc.test "\\"为转义字符: feof();函数检测文件是否已经到达末尾(EOF):…
总览 (SYNOPSIS) #include <stdio.h> void clearerr(FILE *stream); int feof(FILE *stream); int ferror(FILE *stream); int fileno(FILE *stream); 描述 (DESCRIPTION) 函数 clearerr 清除 stream 流 里面 的 文件末尾(end-of-file) 标志 和 错误 标志, 函数 feof 测试 stream 流 里面 的 文件末尾(end-o…
在C语言中,或更精确地说成C标准函数库中表示文件结束符(end of file).在while循环中以EOF作为文件结束标志,这种以EOF作为文件结束标志的文件,必须是文本文件.在文本文件中,数据都是以字符的ASCII代码值的形式存放.我们知道,ASCII代码值的范围是0~255,不可能出现-1,因此可以用EOF作为文件结束标志. 档案存取或其它 I/O 功能可能传回等于象征符号值 (巨集) EOF 指示档案结束的情形发生.实际上 EOF 的值通常为 -1,但它依系统有所不同.巨集 EOF会在编…