1.标准文件相关联的文件指针

 

2.fopen的打开模式

 

3.应用举例

  1. #include<stdio.h>  
  2. #include<stdlib.h>//包含exit的原型   
  3.  
  4. int main(int argc,char *argv[]){  
  5.     int count = 0;//统计字符   
  6.     FILE * fp;//文件指针   
  7.     int ch;//使用int类型来保存读进来的字符   
  8.       
  9.     if(argc != 2){  
  10.         printf("Usage:%s \n",argv[0]);  
  11.         exit(-1);//关闭文件并终止程序,传递0或EXIT_SUCCESS表示程序成功终止,非0或EXIT_FAILURE表示程序非正常终止  
  12.                  //return和exit基本一致,只是在递归中,exit直接终止而return则返回上一级   
  13.     }  
  14.     if((fp = fopen(argv[1],"r")) == NULL){//第一个参数是要打开的文件的文件名(也就是一个字符串指针),第二个参数是一个打开模式   
  15.         printf("Can't open %s\n",argv[0]);//如果成功返回一个文件指针,该指针并不指向实际的文件,而是指向一个关于文件的信息的数据包。   
  16.         exit(-1);//如果失败则返回NULL   
  17.     }  
  18.     while((ch = getc(fp))!=EOF){//getc需要一个文件指针,返回当前正在读取的字符,如果是到达文件尾,返回EOF(-1)   
  19.         putc(ch,stdout);//puts第一个参数是一个字符,第二个参数是一个文件指针   
  20.         count++;//EOF是一个返回值,并不真实存在于文件中!   
  21.     }  
  22.     if(fclose(fp) != 0){//如果fclose成功返回0,不成功返回EOF   
  23.         printf("Has a problem of fclose!");}  
  24.     printf("\n%d",count);  
  25.       
  26.     getchar();  
  27.     return 0;  
  28. }