程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> 判斷文件結束函數(feof)

判斷文件結束函數(feof)

編輯:C++入門知識

函數feof(fp//文件指針)用於測試fp所指向的文件內部位置指針是否指向文件結束。如果是文件結束,函數feof(fp)的值為1(真),如果不結束,函數feof(fp)的值為0(假),feof函數可判斷二進制文件和文本文件的結束

例:

將一個文本文件數據復制到另一個文件中(前提是a.txt是已存在的文件)

[cpp] 
#include <stdio.h>  
int main() 

    FILE *fpin,*fpout; 
    char ch; 
    if((fpin = fopen("d:\\a.txt","rt")) == NULL)//打開源文件  
    { 
        printf("Cannot open a.txt\n"); 
    } 
    if((fpout = fopen("d:\\b.txt","wt")) == NULL)//打開目標文件  
    { 
        printf("cannot open b.txt\n"); 
    } 
    ch = fgetc(fpin); //讀取原文件第一個字符  
    printf("直接輸出文件a的內容\n"); 
    while(!feof(fpin)) //判斷源文件是否結束  
    { 
        putchar(ch); 
        fputc(ch,fpout); 
        ch = fgetc(fpin); 
    } 
    printf("\n"); 
    fclose(fpin); 
    fclose(fpout); 
    printf("\n將a文件復制到b文件中後,輸出b文件的內容\n"); 
    if((fpout = fopen("d:\\b.txt","rt")) == NULL) 
    { 
        printf("Cannot open b.txt\n"); 
    } 
    ch = fgetc(fpout); 
    while(!feof(fpout)) 
    { 
        putchar(ch); 
        ch = fgetc(fpout); 
    } 
    fclose(fpout); 
    printf("\n"); 
    return 0; 

#include <stdio.h>
int main()
{
    FILE *fpin,*fpout;
    char ch;
    if((fpin = fopen("d:\\a.txt","rt")) == NULL)//打開源文件
    {
        printf("Cannot open a.txt\n");
    }
    if((fpout = fopen("d:\\b.txt","wt")) == NULL)//打開目標文件
    {
        printf("cannot open b.txt\n");
    }
    ch = fgetc(fpin); //讀取原文件第一個字符
    printf("直接輸出文件a的內容\n");
    while(!feof(fpin)) //判斷源文件是否結束
    {
        putchar(ch);
        fputc(ch,fpout);
        ch = fgetc(fpin);
    }
    printf("\n");
    fclose(fpin);
    fclose(fpout);
    printf("\n將a文件復制到b文件中後,輸出b文件的內容\n");
    if((fpout = fopen("d:\\b.txt","rt")) == NULL)
    {
        printf("Cannot open b.txt\n");
    }
    ch = fgetc(fpout);
    while(!feof(fpout))
    {
        putchar(ch);
        ch = fgetc(fpout);
    }
    fclose(fpout);
    printf("\n");
    return 0;
}

 \

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved