ungetc.c

来自「winNT技术操作系统,国外开放的原代码和LIUX一样」· C语言 代码 · 共 36 行

C
36
字号
/* Copyright (C) 1996 DJ Delorie, see COPYING.DJ for details */
/* Copyright (C) 1994 DJ Delorie, see COPYING.DJ for details */
#include <precomp.h>

#include <wchar.h>
#include <tchar.h>


/*
 * @implemented
 */
_TINT _ungettc(_TINT c, FILE *f)
{
  if (!__validfp (f) || !OPEN4READING(f)) {
      __set_errno (EINVAL);
      return _TEOF;
    }

  if (c == _TEOF)
    return _TEOF;
  
  if (f->_ptr == f->_base)
  {
      if (!f->_cnt == 0)        
        return _TEOF;
  }
            
   fseek(f, -sizeof(_TCHAR), SEEK_CUR);
    
   if(*(_TCHAR*)f->_ptr != c)
        *((_TCHAR*)(f->_ptr)) = c;
           
   return c;
}

⌨️ 快捷键说明

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