這一句:

目前創(chuàng)新互聯(lián)建站已為千余家的企業(yè)提供了網站建設、域名、雅安服務器托管、網站托管維護、企業(yè)網站設計、白山網站維護等服務,公司將堅持客戶導向、應用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
while?(!feof(p));//循環(huán)到文件結尾
把while (!feof(p)) 后面的??; 去掉,否則就成死循環(huán)了
feof()函數(shù)不是判斷上次讀操作是否讀到文件末尾,而是判斷當前文件指針所指向未知是否是文件末尾。和你讀沒讀沒關系。
所以即使你打開文件,沒有讀,如果文件是個空文件,那么直接調用feof()也將返回真。
即使文件是空的,也要再讀一次,feof函數(shù)值才會變?yōu)檎妗?/p>
因為只有讀出所有的數(shù)據之后,再讀一次,函數(shù)feof(fp)的返回值才為真。(請見《C語言好程序設計—從入門到進階》,人民郵電出版社,2011。)
示例:
#includestdio.h
#includestdlib.h
main()
{
FILE *fp;
int a;
if((fp=fopen("c:\\number.txt","r"))==NULL)
{
printf("文件打開失敗!\n");
exit(0);
}
fscanf(fp,"%d",a);
while(!feof(fp)) /*等價于while(feof(fp)==0)*/
{
printf("%d ",a);
fscanf(fp,"%d",a);
}
fclose(fp);
}
feof
只是“事后”檢查,它不會改變文件流的狀態(tài),甚至根本不會去讀文件,它只會檢查相應的
FILE
結構體的
eof
標記。某種意義上,
feof
就是面向對象中的
getter
方法。
只有別的函數(shù)從文件里面讀東西然后因為碰到錯誤于是需要的東西沒有讀出來,才會把
對應的
FILE
結構體
的
eof
標記設為真。
當前題目:c語言feof函數(shù)使用,c++ feof
文章源于:http://chinadenli.net/article18/dsgojgp.html
成都網站建設公司_創(chuàng)新互聯(lián),為您提供網站設計、搜索引擎優(yōu)化、營銷型網站建設、網站排名、企業(yè)網站制作、定制開發(fā)
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)