读书共享 Primer Plus C-part 10

 

第十三章 文件输入/输出
  • fopen--fclose

        fopen 是文件的操作的开始 fclose是文件操作的结束

  • getc--putc getchar--putchar

      getc对应文件的获取单个字符

       

1  char ch[100];
2  FILE * fp;
3  ...//fopen()...;
4  
5  ch = getc(fp);
6 
7  putc(ch,fp);
8 
9  

 

       getchar 对应字符的键盘输入输出操作操作     

 1 #include<stdio.h>
 2 
 3 
 4 int main()
 5 {
 6 
 7   char ch = getchar();
 8   char str[1024] = {0};
 9   int i = 0;
10   while(ch != '\n')
11 {
12    str[i++]=ch;
13   // putchar(ch);
14    ch = getchar() ;
15 
16 }
17 str[i]=ch;
18 putchar(ch);
19 printf("*%s \n",str);
20 return 0;
21 }

 

    

  • fgets--fputs gets--puts

        fgets,fputs 针对文件进行字符串进行操作,也可以针对键盘等。  

#include<stdio.h>

int main()
{
   FILE *p ;

   char line[1024]={0};

   while(fgets(line,1024,stdin)!=NULL && line[0]!= '\n')
   {
    fputs(line,stdout);
   }
   return 0;

}

   这段代码是对文件之间进行操作但是逻辑可能又问题 只是简单的展示作用  

 1 #include<stdio.h>
 2 #include<string.h>
 3 
 4 int main()
 5 {
 6    FILE *fp ;
 7 
 8    char line[1024]={0};
 9    fp = fopen("content_server.list","r+");
10    while(fgets(line,1024,fp)!=NULL && line[0]!= '\n')
11    {
12        strcat(line,"lcw");
13        fseek( fp , 1 , SEEK_CUR );
14        printf("%s   %d\n",line,fputs(line,fp));
15        // fputs(line,fp);
16    }   
17    
18    fputs("@@",fp);
19    fclose(fp);
20    return 0;
21    
22 }

 

         gets--puts 正对键盘输入输出字符串进行操作

    

#include<stdio.h>


int main()
{
   FILE *fp;
   char words[100];

  fp = fopen("./content_server.list","a+");

  while(gets(words)!=NULL && words[0]!='\0')
  {
    fprintf(fp,"%s",words);
  }

  rewind(fp);
  char ch;
  while(fscanf(fp,"%s",words)==1)
  {
  //putchar(ch);
      puts(words);
  }

  fclose(fp);
  return 0;

}

 

  • fprintf--fscanf  printf--scanf--sprintf

    fpirntf:类似pfuts  fprintf->fputs->fputc 这个是三者的调用时间的结果。详细查询 http://blog.csdn.net/slimfox/article/details/1092709

     fscanf:这个不想讲太多参考上面的代码

     scanf:键盘读入数据

     sprintf:格式化字符串

  • fseek--ftell

         fseek 移动文件的当前位置

         ftell 显示文件的当前位置 

 

posted @ 2017-07-10 16:07  刘传武  阅读(182)  评论(0编辑  收藏  举报