⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fscrnsav.c

📁 C语言库函数的源代码,是C语言学习参考的好文档。
💻 C
字号:
/* +++Date last modified: 05-Jul-1997 */

/*
**  Portable PC screen functions
**  Public domain by Bob Stout
**  Uses SCRNMACS.H and HUGEREAD.C, also from SNIPPETS
*/
 
#include <stdio.h>
#include "sniptype.h"
#include "scrnmacs.h"

/*
**  Prototypes from HUGEREAD.C, also in SNIPPETS
*/

long hugefread(FILE *fp, char FAR *buf, long size);
long hugefwrite(FILE *fp, char FAR *buf, long size);

/*
**  Save the text screen to a file
*/

Boolean_T fSaveScrn(const char *fname)
{
      FILE *file;

      if (NULL == (file = fopen(fname, "wb")))
            return Error_;
      if ((long)SCRNBYTES != hugefwrite(file, (char FAR *)SCRBUFF,
            (long)SCRNBYTES))
      {
            return Error_;
      }
      fclose(file);
      return Success_;
}

/*
**  Restore the text screen from a file
*/

Boolean_T fRestoreScrn(const char *fname)
{
      FILE *file;

      if (NULL == (file = fopen(fname, "rb")))
            return Error_;
      if ((long)SCRNBYTES != hugefread(file, (char FAR *)SCRBUFF,
            (long)SCRNBYTES))
      {
            return Error_;
      }
      fclose(file);
      return Success_;
}

#ifdef TEST

#include <conio.h>

/*
**  Run this test with a screenful of misc. stuff
**
**  Note that this test requires that VIDPORT.C and SCROLL.C, also from
**  SNIPPETS, be linked.
*/

main()
{
      if (Error_ == fSaveScrn("fscrnsav.tst"))
      {
            puts("Unable to save the screen");
            return 1;
      }
      ClrScrn(7);
      GotoXY(0, 0);
      fputs("fClrScrn() tested", stderr);
      fputs("\nHit any key to continue...\n", stderr);
      getch();
      fRestoreScrn("fscrnsav.tst");
      return 0;
}

#endif /* TEST */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -