zoukankan      html  css  js  c++  java
  • C 将文本文件内容逆序打印

    方法一:文件指针固定,依靠偏移量来访问文件内容

     1 void reverse(FILE* fpin)
     2 {
     3     long count = 0;
     4     fseek(fpin, 0, SEEK_END);
     5     while(fseek(fpin,--count,SEEK_END) == 0)
     6     {
     7         fseek(fpin, count, SEEK_END);
     8         putc(getc(fpin), stdout);
     9     }
    10 }

    方法二: 偏移量固定,依靠SEEK_CUR当前指针来访问文件内容

     1 void reverse(FILE* fpin)
     2 {
     3     char ch;
     4     //将文件指针定位到尾部
     5     fseek(fpin, 0, SEEK_END);
     6     //当前指针向文件头部偏移1位,当超出文件范围时退出
     7     while (fseek(fpin, -1, SEEK_CUR) == 0)
     8     {
     9         //获取当前文件指针指向的内容,此时文件指针会自动向文件尾部移动1位
    10         ch = getc(fpin);
    11         //向屏幕打印当前字符
    12         putc(ch, stdout);
    13         //将当前指针向文件头部偏移1位以纠正读取指针的偏移量
    14         fseek(fpin, -1, SEEK_CUR);
    15     }
    16 }
  • 相关阅读:
    Kotlin 学习 (一)
    Spring Boot 学习(一)
    三大特性之继承
    OC中的点语法
    getter和setter
    三大特性之封装
    匿名对象
    对象作为返回值
    对象作为参数的连续传递
    对象作为参数传递
  • 原文地址:https://www.cnblogs.com/endenvor/p/6821681.html
Copyright © 2011-2022 走看看