stdsetvbuf.c

来自「su 的源代码库」· C语言 代码 · 共 44 行

C
44
字号
/* Copyright (c) Colorado School of Mines, 2006.*//* All rights reserved.                       */#include	"stdio_s.h"/*	Stdio function setvbuf()****	Written by Kiem-Phong Vo.*/#if __STD_Cint _stdsetvbuf(Sfio_t* f, char* buf, int type, size_t size)#elseint _stdsetvbuf(f,buf,type,size)Sfio_t*	f;char*	buf;int	type;size_t	size;#endif{	SFMTXSTART(f,-1);	if(type == _IOLBF)	{	sfset(f,SF_LINE,1);	}	else if((f->flags&SF_STRING))	{	SFMTXRETURN(f, -1);	}	else if(type == _IONBF)	{	sfsync(f);		sfsetbuf(f,NIL(Void_t*),0);		sfset(f,SF_LINE,0);	}	else if(type == _IOFBF)	{	if(size == 0)			size = SF_BUFSIZE;		sfsync(f);		sfsetbuf(f,(Void_t*)buf,size);		sfset(f,SF_LINE,0);	}	SFMTXRETURN(f, 0);}

⌨️ 快捷键说明

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