📄 ptalloc.c
字号:
/* *//* * Copyright (c) 1989, 1990, 1991 by the University of Washington *//* * *//* * For copying and distribution information, please see the file *//* * <copyright.h>. */#include "pmachine.h"#include "pfs.h"static PTEXT freep = NULL;int ptext_count = 0;int ptext_max = 0;/* *//* * ptalloc - allocate and initialize ptext structure *//* * *//* * PTALLOC returns a pointer to an initialized structure of type *//* * PTEXT. If it is unable to allocate such a structure, it *//* * returns NULL. */PTEXTptalloc() { PTEXT vt; if(freep) { vt = freep; freep = freep->next; } else { vt = (PTEXT) malloc(sizeof(PTEXT_ST)); if (!vt) return(NULL); ptext_max++; } ptext_count++; /* nearly all parts are 0 [or NULL] */ ZERO(vt); /* The offset is to leave room for additional headers */ vt->start = vt->dat + MAX_PTXT_HDR; return(vt); }/* *//* * ptfree - free a VTEXT structure *//* * *//* * VTFREE takes a pointer to a VTEXT structure and adds it to *//* * the free list for later reuse. */voidptfree(vt) PTEXT vt; { vt->next = freep; vt->previous = NULL; freep = vt; ptext_count--; }/* *//* * ptlfree - free a VTEXT structure *//* * *//* * VTLFREE takes a pointer to a VTEXT structure frees it and any linked *//* * VTEXT structures. It is used to free an entrie list of VTEXT *//* * structures. */voidptlfree(vt) PTEXT vt; { PTEXT nxt; while(vt != NULL) { nxt = vt->next; ptfree(vt); vt = nxt; } }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -