sclose.c

来自「这是一个同样来自贝尔实验室的和UNIX有着渊源的操作系统, 其简洁的设计和实现易」· C语言 代码 · 共 35 行

C
35
字号
/* * pANS stdio -- sclose */#include "iolib.h"char *sclose(FILE *f){	switch(f->state){	default:	/* ERR CLOSED */		if(f->buf && f->flags&BALLOC)			free(f->buf);		f->flags=0;		return NULL;	case OPEN:		f->buf=malloc(1);		f->buf[0]='\0';		break;	case RD:	case END:		f->flags=0;		break;	case RDWR:	case WR:		if(f->wp==f->rp){			if(f->flags&BALLOC)				f->buf=realloc(f->buf, f->bufl+1);			if(f->buf==NULL) return NULL;		}		*f->wp='\0';		f->flags=0;		break;	}	f->state=CLOSED;	f->flags=0;	return f->buf;}

⌨️ 快捷键说明

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