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

📄 setbuffer.c

📁 Newlib 嵌入式 C库 标准实现代码
💻 C
字号:
/* * Copyright (c) 1990 The Regents of the University of California. * All rights reserved. * * Redistribution and use in source and binary forms are permitted * provided that the above copyright notice and this paragraph are * duplicated in all such forms and that any documentation, * advertising materials, and other materials related to such * distribution and use acknowledge that the software was developed * by the University of California, Berkeley.  The name of the * University may not be used to endorse or promote products derived * from this software without specific prior written permission. * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. *//* Modified copy of setbuf.c to support the setbuffer functiondefined as part of BSD.Modifications by Gareth Pearce, 2001.*//*FUNCTION<<setbuffer>>---specify full buffering for a file or stream with sizeINDEX	setbufferANSI_SYNOPSIS	#include <stdio.h>	void setbuffer(FILE *<[fp]>, char *<[buf]>, int <[size]>);TRAD_SYNOPSIS	#include <stdio.h>	void setbuffer(<[fp]>, <[buf]>, <[size]>)	FILE *<[fp]>;	char *<[buf]>;	int <[size]>;DESCRIPTION<<setbuffer>> specifies that output to the file or stream identified by<[fp]> should be fully buffered.  All output for this file will go to abuffer (of size <[size]>).  Output will be passed on to the host systemonly when the buffer is full, or when an input operation intervenes.You may, if you wish, supply your own buffer by passing a pointer toit as the argument <[buf]>.  It must have size <[size]>.  You canalso use <<NULL>> as the value of <[buf]>, to signal that the<<setbuffer>> function is to allocate the buffer.WARNINGSYou may only use <<setbuffer>> before performing any file operationother than opening the file.If you supply a non-null <[buf]>, you must ensure that the associatedstorage continues to be available until you close the streamidentified by <[fp]>.RETURNS<<setbuffer>> does not return a result.PORTABILITYThis function comes from BSD not ANSI or POSIX.Supporting OS subroutines required: <<close>>, <<fstat>>, <<isatty>>,<<lseek>>, <<read>>, <<sbrk>>, <<write>>.*/#include <_ansi.h>#include <stdio.h>#include "local.h"_VOID_DEFUN(setbuffer, (fp, buf, size),       FILE * fp _AND       char *buf _AND       int size){  _CAST_VOID setvbuf (fp, buf, buf ? _IOFBF : _IONBF, (size_t) size);}

⌨️ 快捷键说明

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