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

📄 reent.c

📁 标准c库代码,可以应用于各个系统提供了大量的基本函数
💻 C
字号:
/*FUNCTION	<<reent>>---definition of impure data.	INDEX	reentDESCRIPTION	This module defines the impure data area used by the	non-rentrant functions, such as strtok.*/#include <reent.h>static struct _reent inpure_data = _REENT_INIT (inpure_data);struct _reent *_impure_ptr = &inpure_data;/* Interim cleanup code */voidcleanup_glue (ptr, glue)     struct _reent *ptr;     struct _glue *glue;{  /* Have to reclaim these in reverse order: */  if (glue->_next)    cleanup_glue (ptr, glue->_next);  _free_r (ptr, glue);}void_reclaim_reent (ptr)     struct _reent *ptr;{  if (ptr != _impure_ptr)    {      int k;      /* used by mprec routines. */      if (ptr->_freelist)	{	  struct _Bigint *nextone = ptr->_freelist[15]; /*  15 is _Kmax  */	  for (;nextone;)	    {	      struct _Bigint *thisone = nextone;	      nextone = nextone->_reclaim;	      _free_r (ptr, thisone);	    } 	  _free_r (ptr, ptr->_freelist);	}      /* atexit stuff */      if ((ptr->_atexit) && (ptr->_atexit != &ptr->_atexit0))	{	  struct _atexit *p, *q;	  for (p = ptr->_atexit; p != &ptr->_atexit0;)	    {	      q = p;	      p = p->_next;	      _free_r (ptr, q);	    }	}      if (ptr->_cvtbuf)	_free_r (ptr, ptr->_cvtbuf);      if (ptr->__sdidinit)	{	  /* cleanup won't reclaim memory 'coz usually it's run	     before the program exits, and who wants to wait for that? */	  _cleanup_r (ptr);	  if (ptr->__sglue._next)	    cleanup_glue (ptr, ptr->__sglue._next);	}      /* Malloc memory not reclaimed; no good way to return memory anyway. */    }}

⌨️ 快捷键说明

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