buff.h

来自「一个C语言写的快速贝叶斯垃圾邮件过滤工具」· C头文件 代码 · 共 59 行

H
59
字号
/* $Id: buff.h,v 1.22 2005/01/08 01:17:28 relson Exp $ *//** \file buff.h * declarations and type definitions for buff.c * * \author David Relson <relson@osagesoftware.com> */#ifndef	BUFF_H#define	BUFF_H#include "word.h"/** Type to store an arbitrary string with actual length, * maximum capacity and a pointer to the last byte read. */typedef struct {    word_t t;		/**< the string contained here */    uint   read;	/**< start of last read */    uint   size;	/**< capacity */} buff_t;/** allocate a new buff_t and initialize it from \a buff, \a used * and set the capacity to \a size, without allocating memory for the * actual string */extern buff_t  *buff_new(byte *buff, uint used, uint size);/** initialize an existing buff_t from \a buff, \a used * and set the capacity to \a size, without allocating memory for the * actual string */extern buff_t  *buff_init(buff_t *self, byte *buff, uint used, uint size);/** free the buff_t \a self, without freeing the string */extern void 	buff_free(buff_t *self);/** append word \a in to the existing buffer \a self, reallocating more * room if necessary */extern int	buff_add(buff_t *self, word_t *in);/** read up to a line feed or exhaustion of the buffer capacity, * whichever comes first, from the stdio stream \a in into the buff_t \a * self. */#define buff_fgetsl(self, in) buff_fgetsln(self, in, UINT_MAX)/** read up to \a maxlen characters, a line feed or exhaustion of the * buffer capacity, whichever comes first, from the stdio stream \a in * into the buff_t \a self. */extern int	buff_fgetsln(buff_t *self, FILE *in, uint maxlen);/** print the unread part of the buff_t \a self to the stdio stream fp * by means of word_puts(), which see for meaning of \a width.  */extern void 	buff_puts(const buff_t *self,	uint width, /**< passed verbatim to word_puts() */	FILE *fp);extern void	buff_shift(buff_t *self, uint start, uint length);#endif	/* BUFF_H */

⌨️ 快捷键说明

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